一种测试设备及其测试方法与流程
未命名
08-26
阅读:130
评论:0
1.本技术涉及通信技术,具体的讲是一种测试设备及其测试方法。
背景技术:
2.通信设备长期的发展,现在支持的功能越来越多,产品的迭代更新也越来越频繁,测试人员手动测试前分析需求文档以涵盖所有测试要求,根据测试要求开发测试用例,手动输入测试用例的每个函数,纯粹依靠人力手工进行功能覆盖成本高昂且不能满足日益丰富的综合化测试需求。
技术实现要素:
3.本技术的目的一种测试设备及其测试方法,测试脚本可以根据测试需求自动创建测试用例并执行自动测试。
4.为实现上述目的,本技术提供了一种设备测试方法,该方法包括:基于被测试设备的测试需求设置包含多个配置因子的配置因子集和包含多个操作因子的操作因子集;确定配置因子集的配置因子全组合;取配置因子全组合的每个配置因子组合与操作因子集,确定每个配置因子组合的操作全组合;将每个配置因子组合的操作全组合记录在用例文本文件中;测试工具将用例文本文件中每个配置因子组合的操作全组合替换为配置类函数、流量类函数、调用类函数、操作类函数的对应函数以生成测试用例;测试脚本从用例文本文件依次读取并执行测试用例的替换后的每个函数,以执行自动测试。
5.为实现上述目的,本技术还提供了一种设备测试设备,该处理器通过运行所述存储器中的处理器可执行指令执行本技术中的设备测试方法。
6.本技术的有益效果在于,可知自动生成测试用例,测试人员无需手动输入测试用例的函数,还可以自动执行测试用例实现自动测试。
附图说明
7.图1为本技术提供的一种测试方法实施例的流程图;
8.图2所示为本技术提供的配置因子集和操作因子集的示意图;
9.图3所示为本技术实施例提供的流量类函数的接收检查示意图;
10.图4为本技术实施例提供的搜集运行信息实施例的流程图;
11.图5为本技术提供的一种测试实施例的示意图。
具体实施方式
12.将以多个附图所示的多个例子进行详细说明。在以下详细描述中,多个具体细节用于提供对本技术的全面理解。实例中没有详细地描述已知的方法、步骤、组件以及电路,以免使这些例子的难于理解。
13.使用的术语中,术语“包括”表示包括但不限于;术语“含有”表示包括但不限于;术
语“以上”、“以内”以及“以下”包含本数;术语“大于”、“小于”表示不包含本数。术语“基于”表示至少基于其中一部分。
14.图1为本技术提供的一种测试方法实施例的流程图,该方法包括以下步骤:
15.步骤101,基于被测试设备的测试需求设置包含多个配置因子的配置因子集和包含多个操作因子的操作因子集;
16.步骤102,确定配置因子集的配置因子全组合;
17.步骤103,取配置因子全组合的每个配置因子组合与操作因子集,确定每个配置因子组合的操作全组合;
18.步骤104,将每个配置因子组合的操作全组合记录在用例文本文件中;
19.步骤105,测试工具将用例文本文件中每个配置因子组合的操作全组合替换为配置类函数、流量类函数、调用类函数、操作类函数的对应函数以生成测试用例;
20.步骤106,测试脚本从用例文本文件依次读取并执行测试用例的替换后的每个函数,以执行自动测试。
21.图1实施例的有益效果在于,可知自动生成测试用例,测试人员无需手动输入测试用例的函数,还可以自动执行测试用例实现自动测试。
22.图2所示为本技术提供的配置因子集和操作因子集的示意图;为了基于测试要求自动生成测试用例,本技术可基于配置被测试设备的测试需求设置包含多个配置因子的配置因子集和包含多个操作因子的操作因子集,如图2所示。
23.图2中,基于配置因子集确定的配置因子全组合包括:配置1、配置2、配置1和配置2。
24.然后,测试工具取配置因子全组合的配置因子组合与操作因子集,确定每个配置因子组合的操作全组合:
25.{配置1,操作1};{配置1,操作2};{配置1,操作3};{配置1,操作1、操作2};{配置1,操作1、操作3};{配置1,操作2、操作3};{配置1,操作1、操作2、操作3}。
26.{配置2,操作1};{配置2,操作2};{配置2,操作3};{配置2,操作1、操作2};{配置2,操作1、操作3};{配置2,操作2、操作3};{配置2,操作1、操作2、操作3}
27.{配置1、配置2,操作1};{配置1、配置2,操作2};{配置1、配置2,操作3};{配置1、配置2,操作1、操作2};{配置1、配置2,操作1、操作3};{配置1、配置2,操作1、操作2、操作3}。
28.测试工具将每个配置因子组合的操作全组合记录在用例文本文件中,测试脚本将用例文本文件中每个配置因子组合的操作全组合替换为配置类函数、流量类函数、调用类函数、操作类函数的对应函数以生成测试用例。
29.本技术中,可通过远程登录公共库创建配置类函数、流量类函数、调用类函数、操作类函数;譬如可利用python语言的远程登录telent公共库创建类远程客户机(telnet client)被测试设备登录、将测试用例的参数输入被测试设备,将被测试设备的回显信息保存到本地的用例文本文件进行远程测试。
30.测试工具设置的配置类函数多个配置检查函数且每个配置检查函数包括一个以上检查点且用于执行一项以上参数配置。
31.设置的流量类函数包括多个流量检查函数且每个流量检查函数包括一个以上检查点且用于执行一种以上的收发包检查;譬如,一个发包网卡与一个收包网卡之间的一种
收发包检查;或一个发包网卡分别与两个收包网卡之间两种收发包检查。
32.设置的调用类函数包括多个第三方程序调用函数,每个第三方程序调用函数包括一个以上检查点且用于调用一种第三方程序;譬如调用第三方操作系统的测试程序的鼠标或键盘事件模拟方法,或调用测试设备的浏览器、或操作系统运行的程序。
33.设置的操作类函数的操作类函数包括多个自定义操作函数且每个自定义操作函数包括一个以上检查点且用于执行一种类型以上的自定义的被测试设备的操作。
34.测试脚本将用例文本文件每个配置因子组合的操作全组合记录在用例文本文件中的配置因子组合的操作全组合替换为配置类函数、流量类函数、调用类函数、操作类函数的对应函数以生成测试用例;测试脚本从用例文本文件依次读取并执行测试用例的替换后的每个函数,以执行自动测试。
35.图3所示为本技术实施例提供的流量类函数的接收检查示意图。
36.步骤301,测试脚本执行每个流量检查函数时,为其建立一个对应的流量发包检查进程池并设置定时器。
37.步骤302’以及302”,测试脚本向进程池同时提交发包进程和收包进程,使发包、收包检查同步且独立运行。
38.本技术中,发包进程可通过标准发包函数执行,譬如python的sendp标准函数,收包进程借助于python的抓包函数,镜像函数实现。
39.步骤303,发包进程通过标准的发包函数将指定格式的报文通过发包网卡发送。
40.步骤304,每个收包进程以“指定报文格式”作为过滤条件,当收到的报文具有指定报文格式,则对其进行抓取/复制。
41.步骤305,各收包进程将将抓取指定格式的报文存储在一个本地封装格式文件(encap文件);
42.测试脚本将本地封装格式文件的解析为一个个单独的报文;譬如测试脚本可以将本地封装格式文件中报文的报文头信息、报文内容信息写入本地指定文本(譬如txt)格式文件,检查此文本文件的内容进行“返回指定内容”的检查,由于报文的保存是以字节为单位的,包含了报文内容里每个字节的具体信息,所以在此过程中可以实现精确到字节内容的检查,以此通过对抓包保存的报文内容的检查判断被测试网络设备的功能是否符合预期的方法。
43.测试脚本运行流量检查函数的检查点时,对收包进程的任务状态是否为完成(done)状态,判断是否抓取到了期望的报文,进而得出检查点是否通过的结论。当线程池的定时器超时机制,测试脚本关闭线程池避免发包和收报进程持续执行。
44.图4为本技术实施例提供的搜集运行信息实施例的流程图;
45.步骤401,测试脚本运行搜集函数向被测试设备发送搜集信息命令集;
46.步骤402,测试脚本接收被测试设备运行搜集信息命令集而返回的运行信息;
47.步骤403,测试脚本将测试设备返回的运行存储在运行信息文本文件;
48.步骤404,测试脚本打开运行有信息文本文件并匹配查找待分析的运行信息。
49.测试脚本可以在单独的运行信息文本文件中进行规则匹配查找,譬如查到带有cpu利用率、内存利用率、arp利用率、mac利用率、acl利用率关键字的指定行。
50.步骤405,测试脚本提取匹配的待分析的运行信息的数字信息作为统计信息。
51.测试脚本从查找到的cpu利用率、内存利用率、arp利用率、mac利用率、acl利用率提取数字信息,譬如从查找到的cpu利用率85%提取数字信息85%。
52.步骤406,创建指定格式的运行信息报告并统计信息填写到指定位置。
53.本实施例中,测试脚本按照指定格式创建需要记录上述提取的统计信息的运行信息报告,并将提取的数字信息填写到指定位置,形成了一份关键运行信息报告,如表1所示:
[0054][0055]
表1
[0056]
图5为本技术提供的测试设备的实施例的示意图,该实施例包括处理器、存储器;处理器通过运行所述存储器中的处理器可执行指令用以执行以下操作:存储器用于存储程序,处理器调用存储器存储的程序,以执行上述图2至图4的方法实施例。具体实现方式和技术效果类似,这里不再赘述。
[0057]
本技术的有益效果在于,自动生成测试用例,提高测试效率;通过多线程可同时控制多块网卡收发包并对报文内容的检查精度精确到每个字节的内容匹配;支持操作系统的第三方程序调用(如浏览器、程序等),通过鼠标、键盘事件自动模拟,实现第三方测试工具调用的自动化和基于http页面访问功能测试的自动化;可以随时暂停、继续、终止自动化运行过程,大大方便问题定位,支持搜集被测试设备关键运行信息。
[0058]
以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。
技术特征:
1.一种设备测试方法,其特征在于,所述方法包括:基于被测试设备的测试需求设置包含多个配置因子的配置因子集和包含多个操作因子的操作因子集;确定所述配置因子集的配置因子全组合;取所述配置因子全组合的每个配置因子组合与所述操作因子集,确定每个配置因子组合的操作全组合;将每个所述配置因子组合的操作全组合记录在用例文本文件中;测试工具将所述用例文本文件中每个所述配置因子组合的操作全组合替换为配置类函数、流量类函数、调用类函数、操作类函数的对应函数以生成测试用例;测试脚本从所述用例文本文件依次读取并执行所述测试用例的替换后的每个函数,以执行自动测试。2.根据权利要求1所述的方法,其特征在于,设置包含多个配置因子的配置因子集和包含多个操作因子的操作因子集之前,所述方法还包括设置所述配置类函数且所述配置类函数包括多个配置检查函数且每个所述配置检查函数包括一个以上检查点且用于执行一项以上参数配置;设置所述流量类函数且所述流量类函数包括多个流量检查函数且每个所述流量检查函数包括一个以上检查点且用于执行一种以上的收发包检查;设置所述调用类函数且设置所述调用类函数包括多个第三方程序调用函数且每个所述第三方程序调用函数包括一个以上检查点且用于调用一种第三方程序;设置所述操作类函数且所述操作类函数包括多个自定义操作函数且每个所述自定义操作函数包括一个以上检查点且用于执行一种类型以上的自定义操作。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:所述测试脚本从所述用例文本文件读取并执行替换后的所述流量类函数的每个函数包括:所述测试脚本建立一个对应的流量发包检查进程池并设置定时器;所述测试脚本向所述进程池提一个对应于发包网卡的一个发包进程以及对应每个收包网卡的一个收包进程;所述发包进程通过所述发包网卡发送指定格式的报文;每个收包进程通过对应的收包网卡抓取符合所述指定格式的报文且将抓取到的所述指定格式的报文存储在一个本地封装格式文件;将所述本地封装格式文件解析为一个个单独的报文。4.根据权利要求2所述的方法,其特征在于,所述方法还包括:所述测试脚本确定所述进程池的定时器超时;所述测试脚本删除所述进程池。5.根据权利要求2所述的方法,其特征在于,所述方法还包括:在属于同一个函数或不同函数的任意两个检查点设置循环等待标志位;当运行当前的检查点时读取到所述循环等待标志位,在运行下一个检查点时,对当前检查点进行循环等待处理。6.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述测试脚本从所述用例文本文件读取到任一函数的检查点时,将检查结果存储在测试日志文件。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述测试脚本运行搜集函数向被测试设备发送搜集信息命令集;所述测试脚本接收所述被测试设备运行所述搜集信息命令集而返回的运行信息;所述测试脚本将所述测试设备返回的所述运行存储在运行信息文本文件;所述测试脚本打开所述运行有信息文本文件并匹配查找待分析的运行信息;提取匹配的待分析的运行信息的数字信息作为统计信息;创建指定格式的运行信息报告并统计信息填写到指定位置。8.一种测试设备,其特征在于,所述设备包括处理器以及存储器;所述存储器用于存储处理器可执行指令;其中,所述处理器通过运行所述存储器中的处理器可执行指令用以执行权1-权7任意一项权利要求。
技术总结
本申请提供了一种测试设备及其测试方法。该方法包括:基于被测试设备的测试需求设置包含多个配置因子的配置因子集和包含多个操作因子的操作因子集;确定配置因子集的配置因子全组合;取配置因子全组合的每个配置因子组合与操作因子集,确定每个配置因子组合的操作全组合;将每个配置因子组合的操作全组合记录在用例文本文件中;测试工具将用例文本文件中每个配置因子组合的操作全组合替换为配置类函数、流量类函数、调用类函数、操作类函数的对应函数以生成测试用例;测试脚本从用例文本文件依次读取并执行测试用例的替换后的每个函数,以执行自动测试。以执行自动测试。以执行自动测试。
技术研发人员:付兵
受保护的技术使用者:新华三技术有限公司
技术研发日:2023.05.31
技术公布日:2023/8/23
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种自清式机油滤清器的制作方法 下一篇:一种大跨空间不共面框架柱拔柱施工方法与流程
