CN115904852B - 一种用于数据处理器的自动化测试方法、设备及介质 - Google Patents

一种用于数据处理器的自动化测试方法、设备及介质 Download PDF

Info

Publication number
CN115904852B
CN115904852B CN202310238372.7A CN202310238372A CN115904852B CN 115904852 B CN115904852 B CN 115904852B CN 202310238372 A CN202310238372 A CN 202310238372A CN 115904852 B CN115904852 B CN 115904852B
Authority
CN
China
Prior art keywords
test
test case
data processor
classification
given
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310238372.7A
Other languages
English (en)
Other versions
CN115904852A (zh
Inventor
李恒
毛航航
梁军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Xingyun Zhilian Technology Co Ltd
Original Assignee
Zhuhai Xingyun Zhilian Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Xingyun Zhilian Technology Co Ltd filed Critical Zhuhai Xingyun Zhilian Technology Co Ltd
Priority to CN202310238372.7A priority Critical patent/CN115904852B/zh
Publication of CN115904852A publication Critical patent/CN115904852A/zh
Application granted granted Critical
Publication of CN115904852B publication Critical patent/CN115904852B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种用于数据处理器的自动化测试方法、设备及介质。该方法包括:提供多个测试分类和每个测试分类下的多个测试用例脚本;初始化测试环境;执行给定测试用例脚本来配置测试环境,包括:根据对应的业务模块和给定测试用例脚本,选择性地设定数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置;在测试环境中执行每一个测试用例;针对每一个测试用例生成用例执行结果,并且记录多个步骤各自的执行时间以及执行过程的完成时间;分析每一个测试用例的执行过程的完成时间、多个步骤各自的执行时间和用例执行结果,生成自动化测试报告。如此提升测试效率和效果。

Description

一种用于数据处理器的自动化测试方法、设备及介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种用于数据处理器的自动化测试方法、设备及介质。
背景技术
随着云计算、数据中心、网络通信等技术的发展,经常应用数据处理器(DataProcessing Unit,DPU)来分担中央处理器(central processing unit,CPU)的工作,例如用于虚拟化、网络通信、存储以及数据安全等业务并提供如加速转发、卸载等功能。数据处理器一般通过总线与主机交互并且作为可插拔设备接入主机的主板。目前存在各种不同架构、不同实现方式的数据处理器,例如基于ARM架构的片上系统(systemonchip,SOC),又例如基于现场可编程逻辑门阵列(field-programmable gate array,FPGA)实现的加速器。为了评估数据处理器的性能,判断其是否适合应用于当前业务环境,例如在数据中心、云平台中,并且提供所需要的服务,需要搭建测试框架来对数据处理器的多项关键特性进行测试及分析,并且为了提高效率需要做到自动化以减少人工介入,还需要考虑到测试框架的可扩展性以便适应数据处理器相关技术的迅速发展。但是,现有技术中的自动化测试框架,例如用于大数据服务的自动化测试框架或者测试系统,只是针对大数据服务或者数据规格较高的业务场景生成测试结果的自动化报告,并没有考虑到数据处理器的定位以及所面对的业务环境,也就没有很好地满足对数据处理器进行自动化测试的测试需求。
为此,本申请提供了一种用于数据处理器的自动化测试方法、设备及介质,用于应对上述技术难题。
发明内容
本申请实施例提供了一种用于数据处理器的自动化测试方法、设备及介质,用于解决现有技术中存在的问题。
第一方面,本申请提供了一种自动化测试方法,用于数据处理器。所述自动化测试方法包括:提供与所述数据处理器的多个业务模块一一对应的多个测试分类;针对所述多个测试分类中的每一个测试分类,提供与该测试分类的多个测试类型一一对应的该测试分类下的多个测试用例脚本;在所述多个测试分类中的给定测试分类下初始化测试环境,其中所述初始化所述测试环境包括:清空所述数据处理器的网桥、虚拟交换机流表和虚拟化硬件加速设备;执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境,包括:根据与所述给定测试分类对应的业务模块和所述给定测试用例脚本,选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置;在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例,并且在执行完该测试用例后恢复所述数据处理器的状态到所述数据处理器在执行该测试用例之前的状态;针对所述多个测试用例中的每一个测试用例,生成该测试用例的用例执行结果,并且,在执行该测试用例的过程中记录构成该测试用例的执行过程的多个步骤各自的执行时间,以及记录该测试用例的执行过程的完成时间;针对所述多个测试用例中的每一个测试用例,分析该测试用例的执行过程的完成时间、构成该测试用例的执行过程的多个步骤各自的执行时间和该测试用例的用例执行结果,生成自动化测试报告。
通过本申请的第一方面,一方面聚焦在特定业务模式并且聚焦在特定测试类型从而对测试用例脚本做出精细化控制,并且考虑到数据处理器的定位以及所面对的业务环境从而针对性地对数据处理器的相应关键特性(例如,根据与所述给定测试分类对应的业务模块和所述给定测试用例脚本,选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置)进行测试及分析,有利于满足对数据处理器进行自动化测试的测试需求,另一方面通过记录每个测试用例的用例执行结果、每个测试用例的执行过程的完成时间还有各个步骤各自的执行时间,有利于后续识别时间异常并给出性能优化建议。
在本申请的第一方面的一种可能的实现方式中,所述初始化所述测试环境还包括:同步所述数据处理器的设备时钟。
在本申请的第一方面的一种可能的实现方式中,所述初始化所述测试环境还包括:在所述给定测试分类下初始化执行环境和公共资源,以及根据所述给定测试分类的配置进行所述给定测试分类下的多个测试用例脚本的预配置。
在本申请的第一方面的一种可能的实现方式中,在所述给定测试分类下初始化执行环境和公共资源,包括:建立所述数据处理器与主机侧的会话连接。
在本申请的第一方面的一种可能的实现方式中,所述自动化测试方法还包括:在所述测试环境中执行完所述多个测试用例之后,在所述给定测试分类下释放执行环境和公共资源。
在本申请的第一方面的一种可能的实现方式中,所述多个测试用例脚本中的每一个测试用例脚本包括至少一个标签用于指示该测试用例脚本的优先级、拓扑信息、作者和自动化选项。
在本申请的第一方面的一种可能的实现方式中,在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例,包括:根据所述给定测试用例脚本的标签确定自动化执行策略,然后根据所述自动化执行策略在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例。
在本申请的第一方面的一种可能的实现方式中,在执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境同时,还执行所述给定测试分类下的多个测试用例脚本中的另一测试用例脚本,所述另一测试用例脚本与所述给定测试用例脚本之间不存在资源竞争。
在本申请的第一方面的一种可能的实现方式中,设定所述数据处理器的流量转发方式,包括:设定所述数据处理器的多层虚拟交换机和数据平面开发套件的配置,代表口,和绑定配置。
在本申请的第一方面的一种可能的实现方式中,设定所述数据处理器的流表卸载配置,包括:设定所述数据处理器的硬件流表卸载配置。
在本申请的第一方面的一种可能的实现方式中,设定所述数据处理器的网络协议卸载配置,包括:设定所述数据处理器的传输控制协议/网络协议卸载引擎配置。
在本申请的第一方面的一种可能的实现方式中,设定所述数据处理器的系统模拟配置,包括:在所述数据处理器侧创建网络设备、块设备、虚拟化硬件加速设备。
在本申请的第一方面的一种可能的实现方式中,所述多个业务模块包括:网络虚拟化模块、存储虚拟化模块、芯片驱动模块、系统内核模块和远程直接内存访问模块,其中所述多个测试分类包括:网络虚拟化分类、存储虚拟化分类、芯片驱动分类、系统内核分类和远程直接内存访问分类。
在本申请的第一方面的一种可能的实现方式中,针对所述多个测试分类中的每一个测试分类,该测试分类的多个测试类型包括功能测试类型、性能测试类型、稳定性测试类型和异常测试类型,所述多个测试用例脚本包括功能测试用例脚本、性能测试用例脚本、稳定性测试用例脚本和异常测试用例脚本。
在本申请的第一方面的一种可能的实现方式中,所述自动化测试方法还包括:通过执行与所述功能测试用例脚本相关联的测试用例识别执行时间异常的网络设备或者块设备,将所述执行时间异常的网络设备或者块设备用于执行所述网络虚拟化分类或者所述存储虚拟化分类下的与所述稳定性测试用例脚本相关联的测试用例从而检验所述数据处理器的网路虚拟化功能或者存储虚拟化功能。
在本申请的第一方面的一种可能的实现方式中,所述自动化测试方法还包括:通过执行与所述功能测试用例脚本相关联的测试用例识别执行时间异常的网络设备或者块设备,将所述执行时间异常的网络设备或者块设备用于执行所述网络虚拟化分类或者所述存储虚拟化分类下的与所述异常测试用例脚本相关联的测试用例从而检验所述数据处理器的网路虚拟化功能或者存储虚拟化功能。
在本申请的第一方面的一种可能的实现方式中,所述给定测试分类下的多个测试用例脚本之间存在可复用代码,所述可复用代码对应一个或者多个公共关键字,执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境,包括:通过引用所述一个或者多个公共关键字来调用所述可复用代码。
在本申请的第一方面的一种可能的实现方式中,所述给定测试分类下的多个测试用例脚本之间存在可复用代码,所述可复用代码存储在外部库中,执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境,包括:导入所述外部库来调用所述可复用代码。
第二方面,本申请实施例还提供了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据上述任一方面的任一种实现方式的方法。
第三方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。
第四方面,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的指令,当所述指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种自动化测试框架的示意图;
图2为本申请实施例提供的一种用于数据处理器的自动化测试方法的流程示意图;
图3为本申请实施例提供的一种用于数据处理器的测试分类和测试用例脚本的示意图;
图4为本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
下面将结合附图对本申请实施例作进一步地详细描述。
本申请实施例提供了一种用于数据处理器的自动化测试方法、设备及介质,用于解决现有技术中存在的问题。其中,本申请实施例提供的方法和设备是基于同一发明构思的,由于方法及设备解决问题的原理相似,因此方法与设备的实施例、实施方式、示例或实现方式可以相互参见,其中重复之处不再赘述。
应当理解的是,在本申请的描述中,“至少一个”指一个或一个以上,“多个”指两个或两个以上。另外,“第一”、“第二”等词汇,除非另有说明,否则仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
图1为本申请实施例提供的一种自动化测试框架的示意图。如图1所示,测试数据110被导入测试框架120,测试框架120用于对测试数据110进行标签功能分类和选择执行测试用例,可以支持关键字驱动、数据驱动和行为驱动,例如利用关键字来创建新的关键字和规范新的行为。测试框架120生成测试库130,测试库130用于识别被测试对象以及控制测试过程。例如,可以设置第一配置文件和第二配置文件,通过执行脚本读取第一配置文件或者第二配置文件来配置测试用例的测试环境。最后测试库130将生成的脚本和测试用例导入测试工具用于对待测系统140进行测试,也就是执行相应脚本来配置测试环境并在测试环境中执行测试用例,从而获取测试结果。图1所示的自动化测试框架,具有良好的可扩展性,并且支持关键字驱动,可以用在数据处理器的相关测试,包括同时测试多种类型的客户端或者接口。例如,可以利用关键字在测试框架120生成所需要的测试用例,可以利用测试库130的配置文件和脚本生成来设定特定的测试环境用于执行测试用例,最后生成自动化测试报告。下面结合图2进一步详细说明。
图2为本申请实施例提供的一种用于数据处理器的自动化测试方法的流程示意图。如图2所示,自动化测试方法包括以下步骤。
步骤S202:提供与所述数据处理器的多个业务模块一一对应的多个测试分类。
步骤S204:针对所述多个测试分类中的每一个测试分类,提供与该测试分类的多个测试类型一一对应的该测试分类下的多个测试用例脚本。
步骤S206:在所述多个测试分类中的给定测试分类下初始化测试环境,其中所述初始化所述测试环境包括:清空所述数据处理器的网桥、虚拟交换机流表和虚拟化硬件加速设备。
步骤S208:执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境,包括:根据与所述给定测试分类对应的业务模块和所述给定测试用例脚本,选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置。
步骤S210:在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例,并且在执行完该测试用例后恢复所述数据处理器的状态到所述数据处理器在执行该测试用例之前的状态。
步骤S212:针对所述多个测试用例中的每一个测试用例,生成该测试用例的用例执行结果,并且,在执行该测试用例的过程中记录构成该测试用例的执行过程的多个步骤各自的执行时间,以及记录该测试用例的执行过程的完成时间。
步骤S214:针对所述多个测试用例中的每一个测试用例,分析该测试用例的执行过程的完成时间、构成该测试用例的执行过程的多个步骤各自的执行时间和该测试用例的用例执行结果,生成自动化测试报告。
参考上述各个步骤,数据处理器可以包括多个业务模块,这些业务模块体现了数据处理器的定位以及业务环境的需求。例如,业务模块可以包括网路虚拟化模块,数据处理器通过网络虚拟化模块提供用于网络通信的虚拟化功能,例如生成虚拟网卡,模拟虚拟化网络设备等。再例如,业务模块可以包括存储虚拟化模块,数据处理器通过存储虚拟化模块提供例如虚拟内存等功能。多个业务模块的具体定义、范畴以及数量,可以根据数据处理器的设计目的,对数据处理器进行测试的目的,数据处理器的业务环境的需求等进行具体限定,并且可能随着数据处理器相关技术的发展,将新出现的功能或者业务领域也纳入数据处理器的定义并且可以存在相应的业务模块。在步骤S202,对于多个业务模块,提供一一对应的多个测试分类,这是为了更好地针对每个业务模块提供测试分类以规范化和统一化管理下面的测试用例脚本和测试用例。在步骤S204,针对多个测试分类中的每一个测试分类,提供与该测试分类的多个测试类型一一对应的该测试分类下的多个测试用例脚本。测试分类下的多个测试类型是为了体现测试的侧重点,例如测试类型可以是功能测试,用于检测数据处理器的某项功能是否正常;再例如测试类型可以是性能测试,用于检测数据处理器在执行某项功能上或者在某些方面的性能表现。先按照多个业务模块划分出多个测试分类,接着在每个测试分类下进一步划分出多个测试类型以及提供与多个测试类型相应的测试用例脚本,这样有助于更好地聚焦在特定业务模式并且聚焦在特定测试类型从而对测试用例脚本做出精细化控制,有利于实现分类分析。在步骤S206中,在所述多个测试分类中的给定测试分类下初始化测试环境,其中所述初始化所述测试环境包括:清空所述数据处理器的网桥、虚拟交换机流表和虚拟化硬件加速设备。这里,针对数据处理器的通用特点,通过清空网桥、虚拟交换机流表例如多层虚拟交换机(Open vSwitch,OVS)流表,以及通过清空虚拟化硬件加速设备,例如虚拟宿主机数据路径加速(vhost Data Path Acceleration,VPDA)设备,virtio架构下的网络设备、块设备等。这样可以保证满规格测试,确保流表等测试用例正常执行。在一些实施例中,测试环境初始化还可以包括其它措施,例如根据本次执行测试用例所使用的拓扑环境对将要操作的服务器、数据处理器、交换机、测试仪等设备建立连接,例如安全外壳协议(Secure Shell,SSH)连接或者其它的适合在不安全网络上用于安全远程登录和其他安全网络服务的协议,以便统一调度和控制。在一些实施例中,测试环境初始化还可以包括时钟同步,为了保证测试过程的日志测试报告具有时效性,便于测试结果分析以及定位问题,因此在测试初始化过程对所有的设备时钟进行同步。在步骤S208,在初始化所述测试环境之后,执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境。上面提到,多个测试分类对应多个业务模块,每个测试分类中又进一步划分为多个测试类型,通过与多个测试类型一一对应的多个测试用例脚本来从多个维度去针对数据处理器进行高覆盖率的测试。执行具体的测试用例脚本时,每个测试分类下的不同测试用例脚本之间彼此独立,每个测试用例脚本用于配置执行测试用例的测试环境,并且在执行完测试用例后恢复到先前状态,这样就使得执行测试用例脚本不会相互影响。并且,执行给定测试用例脚本来配置所述测试环境,具体包括:根据与所述给定测试分类对应的业务模块和所述给定测试用例脚本,选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置。这里,针对数据处理器的自动化测试需求,特别是考虑到数据处理器的定位以及所面对的业务环境,因此需要针对性地对数据处理器的多项关键特性进行测试及分析。如上所述,数据处理器一般被设计为帮助中央处理器承担例如虚拟化、网络通信、存储以及数据安全等业务并提供如加速转发、卸载等功能,因此结合与所述给定测试分类对应的业务模块和所述给定测试用例脚本,可以确定执行测试用例时要重点考核的数据处理器的关键特性。因此,通过选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置,可以实现根据对数据处理器的自动化测试要求来对数据处理器的关键特性进行考核。例如,可以通过设定所述数据处理器的流量转发方式,如通过相关配置如多层虚拟交换机和数据平面开发套件(Data Plane Development Kit,DPDK)的配置,通过设置数据处理器内部的流表、代表口、绑定配置等,从而得到不同的流量转发方式,对应了数据处理器不同的功能。另外,结合与所述给定测试分类对应的业务模块和所述给定测试用例脚本,可以对所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置中的一项或者多项进行设定,例如可以同时设定流量转发方式和流表卸载配置来体现数据处理器的流量转发特性。考虑到数据处理器可能要面对各种可能的虚拟化技术、网络功能、报文转发技术还有各种网络协议等,在执行给定测试用例脚本来配置测试环境时,需要结合数据处理器所要面对的具体业务环境,具体地可以通过所述给定测试分类和所述给定测试用例脚本来体现具体业务环境的要求。例如,可以针对特定的网络协议来设计测试用例脚本,进而根据该测试用例脚本来设定网路协议卸载配置。例如,针对传输控制协议/网络协议(TransmissionControl Protocol/Internet Protocol,TCP/IP),可以提供针对性的测试用例脚本,来实现设定TCP/IP卸载引擎(TCP/IP Offloading Engine,TOE)配置,包括设定TOE配置中的TCP和UDP的卸载相关的配置。
在初始化测试环境以及执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境(包括根据与所述给定测试分类对应的业务模块和所述给定测试用例脚本,选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置)之后,在步骤S210,在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例,并且在执行完该测试用例后恢复所述数据处理器的状态到所述数据处理器在执行该测试用例之前的状态。这样意味着,在针对要重点考核的数据处理器的关键特性来配置测试环境包括选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置之后,将测试用例,例如流表或者任务等,放置在这样的测试环境中执行该测试用例,以便下一步分析测试结果生成自动化测试报告。并且,每一个测试用例执行完成后恢复述数据处理器的状态到所述数据处理器在执行该测试用例之前的状态,这样意味着,自动化测试用例脚本相互独立,每一个测试用例执行完成后,无论测试结果如何,数据处理器的配置都会恢复到脚本前状态,因此测试用例脚本执行不会相互影响。在步骤S212,针对所述多个测试用例中的每一个测试用例,生成该测试用例的用例执行结果,并且,在执行该测试用例的过程中记录构成该测试用例的执行过程的多个步骤各自的执行时间,以及记录该测试用例的执行过程的完成时间。这里,通过记录构成该测试用例的执行过程的多个步骤各自的执行时间,以及记录该测试用例的执行过程的完成时间,可以结合该测试用例的用例执行结果,生成所有测试用例的测试日志。换句话说,通过自动记录每个测试用例的自动化执行结果以及测试用例的执行过程的完成时间(也即测试所使用时间),还有记录各个步骤执行所使用的时间。这样得到的日志文件,可以用于分析执行时间的异常,包括某个测试用例的整体执行时间的异常和某个步骤的执行时间的异常。具体地,通过整合测试框架记录的执行时间,可以与配置文件中指定的执行时间进行比较,例如可以在给定测试用例脚本中提供参考执行时间。这样通过与指定的执行时间或者参考执行时间的比较,可以识别出执行时间的异常,例如显著长于或者短于参考执行时间。另外,如果执行时间超过指定的执行时间但是表现为功能正常,这意味着存在性能优化空间,因此可以在相应的测试用例的用例执行结果中体现出性能优化的建议,作为下一步产品性能优化的目标。最后,在步骤S214,针对所述多个测试用例中的每一个测试用例,分析该测试用例的执行过程的完成时间、构成该测试用例的执行过程的多个步骤各自的执行时间和该测试用例的用例执行结果,生成自动化测试报告。最后得到的对所述数据处理器进行自动化测试的自动化测试报告,一方面聚焦在特定业务模式并且聚焦在特定测试类型从而对测试用例脚本做出精细化控制,并且考虑到数据处理器的定位以及所面对的业务环境从而针对性地对数据处理器的相应关键特性(例如,根据与所述给定测试分类对应的业务模块和所述给定测试用例脚本,选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置)进行测试及分析,另一方面通过记录每个测试用例的用例执行结果、每个测试用例的执行过程的完成时间还有各个步骤各自的执行时间,有利于后续识别时间异常并给出性能优化建议。总之,图2所示的用于数据处理器的自动化测试方法,建立起针对数据处理器例如带有数据处理器的智能网卡的自动化测试方法,满足各项功能的性能测试需求并且生成自动化测试报告,有助于对测试结果进行分类分析从而快速生成质量评分,节省了人力接入并且提高了产品快速迭代效率,有利于满足具体业务环境的要求。
在一种可能的实施方式中,所述初始化所述测试环境还包括:同步所述数据处理器的设备时钟。在一种可能的实施方式中,所述初始化所述测试环境还包括:在所述给定测试分类下初始化执行环境和公共资源,以及根据所述给定测试分类的配置进行所述给定测试分类下的多个测试用例脚本的预配置。在一些实施例中,在所述给定测试分类下初始化执行环境和公共资源,包括:建立所述数据处理器与主机侧的会话连接。在一些实施例中,所述自动化测试方法还包括:在所述测试环境中执行完所述多个测试用例之后,在所述给定测试分类下释放执行环境和公共资源。其中,初始化所述测试环境可以包括创建连接通道,对公共资源的初始化可以包括创建公共的连接通道,例如根据本次执行测试用例所使用的拓扑环境对将要操作的服务器、数据处理器、交换机、测试仪等设备建立连接,例如安全外壳协议连接或者其它的适合在不安全网络上用于安全远程登录和其他安全网络服务的协议,以便统一调度和控制。另外,测试环境初始化还可以包括时钟同步,为了保证测试过程的日志测试报告具有时效性,便于测试结果分析以及定位问题,因此在测试初始化过程对所有的设备时钟进行同步。
在一种可能的实施方式中,所述多个测试用例脚本中的每一个测试用例脚本包括至少一个标签用于指示该测试用例脚本的优先级、拓扑信息、作者和自动化选项。在一些实施例中,在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例,包括:根据所述给定测试用例脚本的标签确定自动化执行策略,然后根据所述自动化执行策略在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例。在编写自动化测试用例脚本的时,可以为每个测试用例脚本添加自定义标签,同一个测试用例脚本可以带上多个标签。标签可以用来区分测试用例脚本的优先级、测试用例脚本所使用的拓扑信息、测试用例脚本的作者、测试用例脚本是否可以执行自动化等。这样,根据测试用例脚本使用的标签的不同,可以为不同类别的测试用例选择不同的自动化执行策略。在一些实施例中,测试用例脚本的标签还可以结合关键字,例如利用关键字来创建新的关键字和规范新的行为,这样可以使用关键字和标签进行丰富的组合,有助于提升自动化执行的灵活性。
在一种可能的实施方式中,在执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境同时,还执行所述给定测试分类下的多个测试用例脚本中的另一测试用例脚本,所述另一测试用例脚本与所述给定测试用例脚本之间不存在资源竞争。这里,当测试用例脚本之间不存在资源竞争时,例如没有竞争同一个端口,可以创建多个执行任务同时执行多个测试用例脚本,提升测试效率。
在一种可能的实施方式中,设定所述数据处理器的流量转发方式,包括:设定所述数据处理器的多层虚拟交换机和数据平面开发套件的配置,代表口,和绑定配置。在一种可能的实施方式中,设定所述数据处理器的流表卸载配置,包括:设定所述数据处理器的硬件流表卸载配置。在一种可能的实施方式中,设定所述数据处理器的网络协议卸载配置,包括:设定所述数据处理器的传输控制协议/网络协议卸载引擎配置。在一种可能的实施方式中,设定所述数据处理器的系统模拟配置,包括:在所述数据处理器侧创建网络设备、块设备、虚拟化硬件加速设备。上面提到,数据处理器一般被设计为帮助中央处理器承担例如虚拟化、网络通信、存储以及数据安全等业务并提供如加速转发、卸载等功能,因此结合与所述给定测试分类对应的业务模块和所述给定测试用例脚本,可以确定执行测试用例时要重点考核的数据处理器的关键特性。因此,通过选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置,可以实现根据对数据处理器的自动化测试要求来对数据处理器的关键特性进行考核。例如,通过设定所述数据处理器的多层虚拟交换机和数据平面开发套件的配置,代表口,和绑定配置,从而得到不同的流量转发方式,对应了数据处理器不同的功能。再例如,通过设定所述数据处理器的硬件流表卸载配置,从而提高转发性能。再例如,通过设定所述数据处理器的传输控制协议/网络协议卸载引擎配置,从而测试数据处理器对特定网络协议的卸载。再例如,通过在所述数据处理器侧创建网络设备、块设备、虚拟化硬件加速设备,从而测试虚拟化功能,例如虚拟化硬件加速、单根输入输出虚拟化(Single Root I/O Virtualization,SRIOV)等。
在一种可能的实施方式中,所述多个业务模块包括:网络虚拟化模块、存储虚拟化模块、芯片驱动模块、系统内核模块和远程直接内存访问模块,其中所述多个测试分类包括:网络虚拟化分类、存储虚拟化分类、芯片驱动分类、系统内核分类和远程直接内存访问分类。在一些实施例中,针对所述多个测试分类中的每一个测试分类,该测试分类的多个测试类型包括功能测试类型、性能测试类型、稳定性测试类型和异常测试类型,所述多个测试用例脚本包括功能测试用例脚本、性能测试用例脚本、稳定性测试用例脚本和异常测试用例脚本。在一些实施例中,所述自动化测试方法还包括:通过执行与所述功能测试用例脚本相关联的测试用例识别执行时间异常的网络设备或者块设备,将所述执行时间异常的网络设备或者块设备用于执行所述网络虚拟化分类或者所述存储虚拟化分类下的与所述稳定性测试用例脚本相关联的测试用例从而检验所述数据处理器的网路虚拟化功能或者存储虚拟化功能。在一些实施例中,所述自动化测试方法还包括:通过执行与所述功能测试用例脚本相关联的测试用例识别执行时间异常的网络设备或者块设备,将所述执行时间异常的网络设备或者块设备用于执行所述网络虚拟化分类或者所述存储虚拟化分类下的与所述异常测试用例脚本相关联的测试用例从而检验所述数据处理器的网路虚拟化功能或者存储虚拟化功能。如此,在稳定性测试中,使用执行时间异常的功能测试中创建的设备进行长时间稳定性测试,有助于检验数据处理器中网络虚拟化/存储虚拟化功能是否存在问题。在异常测试中,使用执行时间异常的功能测试中创建的设备进行异常测试,有助于检验数据处理器中网络虚拟化/存储虚拟化功能是否存在问题。另外,在联合测试项目中,例如联合测试网络虚拟化和存储虚拟化,还可以利用网络虚拟化和存储虚拟化各自的测试用例脚本,来提升测试效率。例如,可以根据网络虚拟化设备的数量调整需要创建的存储虚拟化设备个数。假设网络虚拟化与存储虚拟化共用32个物理功能(physical function,PF),在进行网络虚拟化与存储虚拟化共同压力测试的时候,创建的存储虚拟化设备个数与网络虚拟化设备个数之间的关系可以表示为,用32减去网络虚拟化设备个数得到创建的存储虚拟化设备个数,也就是根据网络虚拟化设备的数量调整需要创建的存储虚拟化设备个数。
在一种可能的实施方式中,所述给定测试分类下的多个测试用例脚本之间存在可复用代码,所述可复用代码对应一个或者多个公共关键字,执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境,包括:通过引用所述一个或者多个公共关键字来调用所述可复用代码。在一种可能的实施方式中,所述给定测试分类下的多个测试用例脚本之间存在可复用代码,所述可复用代码存储在外部库中,执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境,包括:导入所述外部库来调用所述可复用代码。如此,通过代码复用提升了测试效率。
图3为本申请实施例提供的一种用于数据处理器的测试分类和测试用例脚本的示意图。如图3所示,所述多个测试分类包括:网络虚拟化分类300、存储虚拟化分类310、芯片驱动分类320、系统内核分类330和远程直接内存访问分类340。所述多个测试分类与数据处理器的多个业务模块一一对应,所述多个业务模块包括:网络虚拟化模块、存储虚拟化模块、芯片驱动模块、系统内核模块和远程直接内存访问模块。图3中还示出了,所述多个测试分类中的每一个测试分类下有多个测试用例脚本,所述多个测试用例脚本是与该测试分类的多个测试类型一一对应。每个测试分类的多个测试类型包括功能测试类型、性能测试类型、稳定性测试类型和异常测试类型,每个测试分类下的多个测试用例脚本包括功能测试用例脚本、性能测试用例脚本、稳定性测试用例脚本和异常测试用例脚本。具体地,网络虚拟化分类300下的测试用例脚本包括功能测试用例脚本302、性能测试用例脚本304、稳定性测试用例脚本306和异常测试用例脚本308。存储虚拟化分类310下的测试用例脚本包括功能测试用例脚本312、性能测试用例脚本314、稳定性测试用例脚本316和异常测试用例脚本318。芯片驱动分类320下的测试用例脚本包括功能测试用例脚本322、性能测试用例脚本324、稳定性测试用例脚本326和异常测试用例脚本328。系统内核分类330下的测试用例脚本包括功能测试用例脚本332、性能测试用例脚本334、稳定性测试用例脚本336和异常测试用例脚本338。远程直接内存访问分类340下的测试用例脚本包括功能测试用例脚本342、性能测试用例脚本344、稳定性测试用例脚本346和异常测试用例脚本348。
继续参阅图3,先按照多个业务模块划分出多个测试分类,接着在每个测试分类下进一步划分出多个测试类型以及提供与多个测试类型相应的测试用例脚本,这样有助于更好地聚焦在特定业务模式并且聚焦在特定测试类型从而对测试用例脚本做出精细化控制,有利于实现分类分析。图3示例性的提供了测试分类和测试用例脚本的划分方式。应当理解的是,多个业务模块还有相应的测试分类的具体定义、范畴以及数量,可以根据数据处理器的设计目的,对数据处理器进行测试的目的,数据处理器的业务环境的需求等进行具体限定,并且可能随着数据处理器相关技术的发展,将新出现的功能或者业务领域也纳入数据处理器的定义并且可以存在相应的业务模块。另外,测试用例脚本的定义、范畴和数量,也是可以根据实际需要进行调整。在一些实施例中,可能将稳定性测试用例脚本细分成长期稳定性和短期稳定性两个版本。在一些实施例中,可能针对极端业务环境或者压力测试设计专门的测试用例脚本。
参见图4,图4是本申请实施例提供的一种计算设备的结构示意图,该计算设备400包括:一个或者多个处理器410、通信接口420以及存储器430。所述处理器410、通信接口420以及存储器430通过总线440相互连接。可选地,该计算设备400还可以包括输入/输出接口450,输入/输出接口450连接有输入/输出设备,用于接收用户设置的参数等。该计算设备400能够用于实现上述的本申请实施例中设备实施例或者系统实施例的部分或者全部功能;处理器410还能够用于实现上述的本申请实施例中方法实施例的部分或者全部操作步骤。例如,该计算设备400执行各种操作的具体实现可参照上述实施例中的具体细节,如处理器410用于执行上述方法实施例中部分或者全部步骤或者上述方法实施例中的部分或者全部操作。再例如,本申请实施例中,计算设备400可用于实现上述装置实施例中一个或者多个部件的部分或者全部功能,此外通信接口420具体可用于为了实现这些装置、部件的功能所必须的通讯功能等,以及处理器410具体可用于为了实现这些装置、部件的功能所必须的处理功能等。
应当理解的是,图4的计算设备400可以包括一个或者多个处理器410,并且多个处理器410可以按照并行化连接方式、串行化连接方式、串并行连接方式或者任意连接方式来协同提供处理能力,或者多个处理器410可以构成处理器序列或者处理器阵列,或者多个处理器410之间可以分成主处理器和辅助处理器,或者多个处理器410之间可以具有不同的架构如采用异构计算架构。另外,图4所示的计算设备400,相关的结构性描述及功能性描述是示例性且非限制性的。在一些示例性实施例中,计算设备400可以包括比图4所示的更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。
处理器410可以有多种具体实现形式,例如处理器410可以包括中央处理器(central processing unit,CPU)、图形处理器(graphic processing unit,GPU)、神经网络处理器(neural-network processing unit,NPU)、张量处理器(tensor processingunit,TPU)或数据处理器(data processing unit,DPU)等一种或多种的组合,本申请实施例不做具体限定。处理器410还可以是单核处理器或多核处理器。处理器410可以由CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(application-specific integratedcircuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。处理器410也可以单独采用内置处理逻辑的逻辑器件来实现,例如FPGA或数字信号处理器(digital signal processor,DSP)等。通信接口420可以为有线接口或无线接口,用于与其他模块或设备进行通信,有线接口可以是以太接口、局域互联网络(local interconnect network,LIN)等,无线接口可以是蜂窝网络接口或使用无线局域网接口等。
存储器430可以是非易失性存储器,例如,只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。存储器430也可以是易失性存储器,易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhancedSDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。存储器430也可用于存储程序代码和数据,以便于处理器410调用存储器430中存储的程序代码执行上述方法实施例中的部分或者全部操作步骤,或者执行上述设备实施例中的相应功能。此外,计算设备400可能包含相比于图4展示的更多或者更少的组件,或者有不同的组件配置方式。
总线440可以是快捷外围部件互连标准(peripheral component interconnectexpress,PCIe)线,或扩展工业标准结构(extended industry standard architecture,EISA)总线、统一总线(unified bus,Ubus或UB)、计算机快速链接(compute express link,CXL)、缓存一致互联协议(cache coherent interconnect for accelerators,CCIX)等。总线440可以分为地址总线、数据总线、控制总线等。总线440除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请实施例还提供一种系统,该系统包括多个计算设备,每个计算设备的结构可以参照上述的计算设备的结构。该系统可实现的功能或者操作可以参照上述方法实施例中的具体实现步骤和/或上述装置实施例中所描述的具体功能,在此不再赘述。本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机设备(如一个或者多个处理器)上运行时可以实现上述方法实施例中的方法步骤。所述计算机可读存储介质的处理器在执行上述方法步骤的具体实现可参照上述方法实施例中所描述的具体操作和/或上述装置实施例中所描述的具体功能,在此不再赘述。本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的指令,当所述指令在计算机设备上运行时使得所述计算机设备执行上述方法实施例中的方法步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。本申请实施例可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(如软盘、硬盘、磁带)、光介质、或者半导体介质。半导体介质可以是固态硬盘,也可以是随机存取存储器,闪存,只读存储器,可擦可编程只读存储器,电可擦可编程只读存储器,寄存器或任何其他形式的合适存储介质。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并或删减;本申请实施例系统中的模块可以根据实际需要进行划分、合并或删减。如果本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (20)

1.一种自动化测试方法,用于数据处理器,其特征在于,所述自动化测试方法包括:
提供与所述数据处理器的多个业务模块一一对应的多个测试分类;
针对所述多个测试分类中的每一个测试分类,提供与该测试分类的多个测试类型一一对应的该测试分类下的多个测试用例脚本;
在所述多个测试分类中的给定测试分类下初始化测试环境,其中所述初始化所述测试环境包括:清空所述数据处理器的网桥、虚拟交换机流表和虚拟化硬件加速设备;
执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境,包括:根据与所述给定测试分类对应的业务模块和所述给定测试用例脚本,选择性地设定所述数据处理器的流量转发方式、流表卸载配置、网络协议卸载配置和系统模拟配置;
在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例,并且在执行完该测试用例后恢复所述数据处理器的状态到所述数据处理器在执行该测试用例之前的状态;
针对所述多个测试用例中的每一个测试用例,生成该测试用例的用例执行结果,并且,在执行该测试用例的过程中记录构成该测试用例的执行过程的多个步骤各自的执行时间,以及记录该测试用例的执行过程的完成时间;
针对所述多个测试用例中的每一个测试用例,分析该测试用例的执行过程的完成时间、构成该测试用例的执行过程的多个步骤各自的执行时间和该测试用例的用例执行结果,生成自动化测试报告。
2.根据权利要求1所述的自动化测试方法,其特征在于,所述初始化所述测试环境还包括:同步所述数据处理器的设备时钟。
3.根据权利要求1所述的自动化测试方法,其特征在于,所述初始化所述测试环境还包括:在所述给定测试分类下初始化执行环境和公共资源,以及根据所述给定测试分类的配置进行所述给定测试分类下的多个测试用例脚本的预配置。
4.根据权利要求3所述的自动化测试方法,其特征在于,在所述给定测试分类下初始化执行环境和公共资源,包括:建立所述数据处理器与主机侧的会话连接。
5.根据权利要求4所述的自动化测试方法,其特征在于,所述自动化测试方法还包括:在所述测试环境中执行完所述多个测试用例之后,在所述给定测试分类下释放执行环境和公共资源。
6.根据权利要求1所述的自动化测试方法,其特征在于,所述多个测试用例脚本中的每一个测试用例脚本包括至少一个标签用于指示该测试用例脚本的优先级、拓扑信息、作者和自动化选项。
7.根据权利要求6所述的自动化测试方法,其特征在于,在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例,包括:根据所述给定测试用例脚本的标签确定自动化执行策略,然后根据所述自动化执行策略在所述测试环境中执行与所述给定测试用例脚本相关联的多个测试用例中的每一个测试用例。
8.根据权利要求1所述的自动化测试方法,其特征在于,在执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境同时,还执行所述给定测试分类下的多个测试用例脚本中的另一测试用例脚本,所述另一测试用例脚本与所述给定测试用例脚本之间不存在资源竞争。
9.根据权利要求1所述的自动化测试方法,其特征在于,设定所述数据处理器的流量转发方式,包括:设定所述数据处理器的多层虚拟交换机和数据平面开发套件的配置,代表口,和绑定配置。
10.根据权利要求1所述的自动化测试方法,其特征在于,设定所述数据处理器的流表卸载配置,包括:设定所述数据处理器的硬件流表卸载配置。
11.根据权利要求1所述的自动化测试方法,其特征在于,设定所述数据处理器的网络协议卸载配置,包括:设定所述数据处理器的传输控制协议/网络协议卸载引擎配置。
12.根据权利要求1所述的自动化测试方法,其特征在于,设定所述数据处理器的系统模拟配置,包括:在所述数据处理器侧创建网络设备、块设备、虚拟化硬件加速设备。
13.根据权利要求1所述的自动化测试方法,其特征在于,所述多个业务模块包括:网络虚拟化模块、存储虚拟化模块、芯片驱动模块、系统内核模块和远程直接内存访问模块,其中所述多个测试分类包括:网络虚拟化分类、存储虚拟化分类、芯片驱动分类、系统内核分类和远程直接内存访问分类。
14.根据权利要求13所述的自动化测试方法,其特征在于,针对所述多个测试分类中的每一个测试分类,该测试分类的多个测试类型包括功能测试类型、性能测试类型、稳定性测试类型和异常测试类型,所述多个测试用例脚本包括功能测试用例脚本、性能测试用例脚本、稳定性测试用例脚本和异常测试用例脚本。
15.根据权利要求14所述的自动化测试方法,其特征在于,所述自动化测试方法还包括:
通过执行与所述功能测试用例脚本相关联的测试用例识别执行时间异常的网络设备或者块设备,
将所述执行时间异常的网络设备或者块设备用于执行所述网络虚拟化分类或者所述存储虚拟化分类下的与所述稳定性测试用例脚本相关联的测试用例从而检验所述数据处理器的网路虚拟化功能或者存储虚拟化功能。
16.根据权利要求14所述的自动化测试方法,其特征在于,所述自动化测试方法还包括:
通过执行与所述功能测试用例脚本相关联的测试用例识别执行时间异常的网络设备或者块设备,
将所述执行时间异常的网络设备或者块设备用于执行所述网络虚拟化分类或者所述存储虚拟化分类下的与所述异常测试用例脚本相关联的测试用例从而检验所述数据处理器的网路虚拟化功能或者存储虚拟化功能。
17.根据权利要求1所述的自动化测试方法,其特征在于,所述给定测试分类下的多个测试用例脚本之间存在可复用代码,所述可复用代码对应一个或者多个公共关键字,执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境,包括:通过引用所述一个或者多个公共关键字来调用所述可复用代码。
18.根据权利要求1所述的自动化测试方法,其特征在于,所述给定测试分类下的多个测试用例脚本之间存在可复用代码,所述可复用代码存储在外部库中,执行所述给定测试分类下的多个测试用例脚本中的给定测试用例脚本来配置所述测试环境,包括:导入所述外部库来调用所述可复用代码。
19.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据权利要求1至18中任一项所述的方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据权利要求1至18中任一项所述的方法。
CN202310238372.7A 2023-03-14 2023-03-14 一种用于数据处理器的自动化测试方法、设备及介质 Active CN115904852B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310238372.7A CN115904852B (zh) 2023-03-14 2023-03-14 一种用于数据处理器的自动化测试方法、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310238372.7A CN115904852B (zh) 2023-03-14 2023-03-14 一种用于数据处理器的自动化测试方法、设备及介质

Publications (2)

Publication Number Publication Date
CN115904852A CN115904852A (zh) 2023-04-04
CN115904852B true CN115904852B (zh) 2023-05-16

Family

ID=85750238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310238372.7A Active CN115904852B (zh) 2023-03-14 2023-03-14 一种用于数据处理器的自动化测试方法、设备及介质

Country Status (1)

Country Link
CN (1) CN115904852B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274140A (zh) * 2020-01-19 2020-06-12 苏州浪潮智能科技有限公司 一种自动化用例执行现场恢复的装置、方法和服务器
CN112035300A (zh) * 2020-08-12 2020-12-04 中电科技(北京)有限公司 服务器bmc自动化测试系统、方法、存储介质、电子设备
CN112286779A (zh) * 2019-07-23 2021-01-29 腾讯科技(深圳)有限公司 测试任务处理方法、装置、存储介质和计算机设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9317410B2 (en) * 2013-03-15 2016-04-19 International Business Machines Corporation Testing functional correctness and idempotence of software automation scripts
US20160103761A1 (en) * 2014-10-11 2016-04-14 Toshiba Global Commerce Solutions Holdings Corporation Systems and methods for preparing an application testing environment and for executing an automated test script in an application testing environment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112286779A (zh) * 2019-07-23 2021-01-29 腾讯科技(深圳)有限公司 测试任务处理方法、装置、存储介质和计算机设备
CN111274140A (zh) * 2020-01-19 2020-06-12 苏州浪潮智能科技有限公司 一种自动化用例执行现场恢复的装置、方法和服务器
CN112035300A (zh) * 2020-08-12 2020-12-04 中电科技(北京)有限公司 服务器bmc自动化测试系统、方法、存储介质、电子设备

Also Published As

Publication number Publication date
CN115904852A (zh) 2023-04-04

Similar Documents

Publication Publication Date Title
CN108170590B (zh) 一种区块链系统的测试系统和方法
US9672137B1 (en) Shadow test replay service
US9794343B2 (en) Reconfigurable cloud computing
US11755919B2 (en) Analytics for an automated application testing platform
US11483218B2 (en) Automating 5G slices using real-time analytics
CN113342583B (zh) 芯片验证系统、方法、装置、设备和存储介质
CN110750458A (zh) 大数据平台测试方法、装置、可读存储介质及电子设备
US11200048B2 (en) Modification of codified infrastructure for orchestration in a multi-cloud environment
Kjorveziroski et al. Kubernetes distributions for the edge: serverless performance evaluation
CN115563019A (zh) 一种uvm与c联合验证方法和系统
CN113448678A (zh) 应用信息生成方法、部署方法及装置、系统、存储介质
TWI626538B (zh) 基礎架構規則產生技術
EP2482193B1 (fr) Procédé d'optimisation dynamique d'une architecture d'outils de tests système
CN112559525B (zh) 数据检查系统、方法、装置和服务器
CN115904852B (zh) 一种用于数据处理器的自动化测试方法、设备及介质
KR102024275B1 (ko) 스크립트를 활용한 시험 프로그램 개발 시스템 및 그 방법
JP2020190556A (ja) 試験測定システム及び被試験デバイスの試験方法
CN115757084A (zh) 测试方法和测试装置及存储介质
US11294804B2 (en) Test case failure with root cause isolation
Noring Investigating the possibility of speeding up Mininet by using Netmap, an alternative Linux packet I/O framework
US20230229586A1 (en) Environment specific software test failure analysis
CN117574822B (zh) 用于芯片的面向优化设计测试方法、计算机设备及介质
Zhang et al. Tinyedge: Enabling rapid edge system customization for iot applications
US11968086B1 (en) Isolated environment provisioning in service mesh-based microservices systems
US11429513B1 (en) Testing and verifying cloud services using a computational graph

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant