一种基于数据包自动化测试NP芯片API接口的方法技术

技术编号:35819071 阅读:11 留言:0更新日期:2022-12-03 13:43
本发明专利技术涉及一种基于数据包自动化测试NP芯片API接口的方法,属于计算机网络领域。本发明专利技术测试PC负责组装测试报文,通过网卡发送该报文到NP平台的平台网卡,NP平台包括NP芯片和平台网卡,NP芯片通过平台网卡收到测试报文后触发自动测试流程,并组装包含测试结果的测试应答报文发回到测试PC,测试PC自动分析报文内容判断测试结果。本发明专利技术不仅设计了NP芯片API接口的测试报文格式,而且编写了自动化测试框架、微码、测试用例,测试环境易于移植和复制,可以同步在多个环境中进行。采用本发明专利技术所述的方法后,测试人员对NP芯片API接口的验证效率得到了极大提高,且在回归阶段可以自动化实现所有的API接口覆盖验证。所有的API接口覆盖验证。所有的API接口覆盖验证。

【技术实现步骤摘要】
一种基于数据包自动化测试NP芯片API接口的方法


[0001]本专利技术属于计算机网络领域,具体涉及一种基于数据包自动化测试NP芯片API接口的方法。

技术介绍

[0002]网络处理器芯片(后称NP芯片)是当今对网络数据流量更专业更高效的一种处理方案。为了让用户可以更便捷更高效得使用NP芯片提供的各种功能,通常NP芯片中提供了强大的API支持。通常API的测试更多是在验证阶段进行,通过逻辑仿真进行功能正确性测试,但该方法具有明显的局限性。另一种测试方式是通过编写微码程序调用API接口,从而观察API输入输出是否符合预期设计。但使用微码程序验证API的测试方案有很多局限性。首先,微码属于一种较为底层的编程语言,学习及编写的效率较为低下,使用其进行测试会有大量的时间浪费在编码上;其次,NP处理器中能写入的微码程序容量有限,一次性能验证的功能极其有限,反复导入微码程序也是效率瓶颈;最后,该方案无法实现自动化测试,或者说实现自动化测试的难度较高。

技术实现思路

[0003](一)要解决的技术问题
[0004]本专利技术要解决的技术问题是如何提供一种基于数据包自动化测试NP芯片API接口的方法,以解决使用微码程序验证API的测试方案有很多局限性,导致无法实现自动化测试,或者说实现自动化测试的难度较高的问题。
[0005](二)技术方案
[0006]为了解决上述技术问题,本专利技术提出一种基于数据包自动化测试NP芯片API接口的方法,该方法包括如下步骤:
[0007]第一步,设计测试报文格式,该报文基于以太头设计,属于二层通讯协议,采用以太协议0x4500作为识别协议号;
[0008]第二步,编写自动化测试框架;该框架运行在测试PC上,首先读取测试用例文件,测试用例描述该项测试的需发送测试报文各字段的值和预期返回测试报文各字段的值,把需发送的测试报文各字段值提取出来,组成测试报文,并发送到NP芯片;NP芯片对测试报文进行一系列处理会返回一个测试应答报文,测试框架对测试应答报文的结果进行分析处理,判定该测试是否通过,从而完成一项测试;然后重复这个过程,不断读取用例、组装并发送测试报文、解析测试应答报文、收集测试结果并生成测试报告;
[0009]第三步,编写微码;微码是存储并运行在NP芯片中的代码,微码用于拆解发送到NP芯片的测试报文,把其中的有效载荷部分发送到NP芯片的API处理模块中;然后在API处理模块返回结果后,再次把结果封装到测试应答报文中,发送出测试应答报文;
[0010]第四步,编写测试用例文件;在框架和微码工作完成之后,设计测试用例,测试用例文件内容包括:测试编号、测试用例名称、API接口名、发送测试报文各字段参数值、返回
测试应答报文各字段参数值和备注信息;
[0011]第五步,执行测试:首先,准备好被测NP芯片,灌入写好的微码;其次,准备一台测试PC,装好自动化测试框架,并导入测试用例文件;最后,使用网线把二者链接在一起,开始对NP芯片进行验证。
[0012]进一步地,测试PC负责组装测试报文,通过网卡发送该报文到NP平台的平台网卡,NP平台包括NP芯片和平台网卡,NP芯片通过平台网卡收到测试报文后触发自动测试流程,并组装包含测试结果的测试应答报文发回到测试PC,测试PC自动分析报文内容判断测试结果。
[0013]进一步地,所述第一步中,测试报文的每个word为32bi t,word0

2的全部和word3的高位16bi t属于以太头部分;word3的低位16bi t和word4

11的全部属于测试控制字段部分;word12到最后的所有部分属于具体的测试内容部分。
[0014]进一步地,所述第一步中,测试报文的字段包括:opcode、miss_case、code、subcode、extcode、tages、data_len、dst_value、API_ack_dataLen、API_dataLen、API_Header、API_data和Padding,其中,opcode用于识别测试请求还是测试应答,miss_case用于识别是否命中微码测试处理分支;code,subcode,extcode用于识别微码测试中的各个处理分支路径;tages用于识别测试报文的id序号;data_len用于识别API_ack_dataLen、API_dataLen、API_Header、API_data和Padding这几部分的总长度;dst_value用于识别最终测试结果;API_ack_dataLen用于设置API返回数据长度;API_dataLen用于设置发送API数据长度;API_Header为API指令部分;API_data为API数据部分;Padding为报文填充部分。
[0015]进一步地,所述第二步中,测试框架基于python程序实现。
[0016]进一步地,所述第二步中,测试框架编写完成后,除非新API接口与以前接口使用模式有很大的区别,才需要另行设计测试框架。
[0017]进一步地,所述第三步中,通过code、subcode、extcode分支路径判断处理不同的API处理流程。
[0018]进一步地,所述第三步中,微码编写固化后,除非新API接口与以前接口使用模式有很大的区别,才需要另行设计分支路径进行新处理流程。
[0019]进一步地,所述第四步中,测试用例文件使用excel格式。
[0020]进一步地,所述第四步中,发送测试报文各字段参数值和返回测试应答报文各字段参数值中详细记录了组装报文时各字段需要设置的值。
[0021](三)有益效果
[0022]本专利技术提出一种基于数据包自动化测试NP芯片API接口的方法,本专利技术不仅设计了NP芯片API接口的测试报文格式,而且编写了自动化测试框架、微码、测试用例,测试环境易于移植和复制,可以同步在多个环境中进行。采用本专利技术所述的方法后,测试人员对NP芯片API接口的验证效率得到了极大提高,且在回归阶段可以自动化实现所有的API接口覆盖验证。对NP芯片研发流程有了更高效更准确的测试保障。
附图说明
[0023]图1为本专利技术的总流程图;
[0024]图2为本专利技术的拓扑图;
[0025]图3为本专利技术的执行阶段流程图;
[0026]图4为本专利技术的测试报文格式图。
具体实施方式
[0027]为使本专利技术的目的、内容和优点更加清楚,下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。
[0028]本专利技术的目的是为了提供一种能够更高效的对NP芯片API接口进行测试验证的方法。首先,能让测试人员更多的精力都在设计测试方案和用例上,而不是更多时间耗费在编写测试程序上;其次,提高了API验证的效率,能够更快地验证一个API接口的各种输入输出;最后,该方案基于自动化方式实现,能极大提高回归效率。
[0029]图1是本专利技术的总流程图。该方法的核心原理本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于数据包自动化测试NP芯片API接口的方法,其特征在于,该方法包括如下步骤:第一步,设计测试报文格式,该报文基于以太头设计,属于二层通讯协议,采用以太协议0x4500作为识别协议号;第二步,编写自动化测试框架;该框架运行在测试PC上,首先读取测试用例文件,测试用例描述该项测试的需发送测试报文各字段的值和预期返回测试报文各字段的值,把需发送的测试报文各字段值提取出来,组成测试报文,并发送到NP芯片;NP芯片对测试报文进行一系列处理会返回一个测试应答报文,测试框架对测试应答报文的结果进行分析处理,判定该测试是否通过,从而完成一项测试;然后重复这个过程,不断读取用例、组装并发送测试报文、解析测试应答报文、收集测试结果并生成测试报告;第三步,编写微码;微码是存储并运行在NP芯片中的代码,微码用于拆解发送到NP芯片的测试报文,把其中的有效载荷部分发送到NP芯片的API处理模块中;然后在API处理模块返回结果后,再次把结果封装到测试应答报文中,发送出测试应答报文;第四步,编写测试用例文件;在框架和微码工作完成之后,设计测试用例,测试用例文件内容包括:测试编号、测试用例名称、API接口名、发送测试报文各字段参数值、返回测试应答报文各字段参数值和备注信息;第五步,执行测试:首先,准备好被测NP芯片,灌入写好的微码;其次,准备一台测试PC,装好自动化测试框架,并导入测试用例文件;最后,使用网线把二者链接在一起,开始对NP芯片进行验证。2.如权利要求1所述的基于数据包自动化测试NP芯片API接口的方法,其特征在于,测试PC负责组装测试报文,通过网卡发送该报文到NP平台的平台网卡,NP平台包括NP芯片和平台网卡,NP芯片通过平台网卡收到测试报文后触发自动测试流程,并组装包含测试结果的测试应答报文发回到测试PC,测试PC自动分析报文内容判断测试结果。3.如权利要求1或2所述的基于数据包自动化测试NP芯片API接口的方法,其特征在于,所述第一步中,测试报文的每个word为32bi t,word0

2的全部和word3的高位16bit属于以太头部分;word3的低位16bi t和word4

11的全部属于测试控制字段部分;word12到最后的所有部分属于具体的测试内容部分。4.如权利要求3所述的基于数...

【专利技术属性】
技术研发人员:余立江廖鹏举顾蔚文
申请(专利权)人:成都北中网芯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1