CN117743150A - 步骤并行执行的测试方法、装置、电子设备及介质 - Google Patents
步骤并行执行的测试方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN117743150A CN117743150A CN202311615792.9A CN202311615792A CN117743150A CN 117743150 A CN117743150 A CN 117743150A CN 202311615792 A CN202311615792 A CN 202311615792A CN 117743150 A CN117743150 A CN 117743150A
- Authority
- CN
- China
- Prior art keywords
- test
- execution
- elements
- test task
- task
- 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.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 291
- 238000000034 method Methods 0.000 claims abstract description 107
- 230000008569 process Effects 0.000 claims abstract description 86
- 238000013515 script Methods 0.000 claims abstract description 69
- 230000006870 function Effects 0.000 claims description 33
- 238000010998 test method Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 14
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 238000013522 software testing Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种步骤并行执行的测试方法、装置、电子设备及介质。该方法包括:获取测试任务;基于所述测试任务,确定所述测试任务对应的测试脚本结构,所述测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;基于所述测试脚本结构,执行所述测试任务;其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系。本发明提供的步骤并行执行的测试方法,测试脚本结构可读性高,还可以缩短测试周期。
Description
技术领域
本发明涉及软件测试技术领域,尤其涉及一种步骤并行执行的测试方法、装置、电子设备及介质。
背景技术
城轨列控系统的安全运行涉及软件开发、软件测试、现场集成等多个阶段,其中软件测试是保障设备安全运行必不可少的环节。软件测试分为手动测试和自动测试,目前,大部分测试工作仍然以手动测试为主,自动测试受限于人力、成本等问题,应用场景数量仍落后于手动测试。但是自动测试近年来发展非常迅速,应用范围逐步扩大,已应用在联锁、区域控制器、车载等多个列控设备功能测试和数据测试。但是各个产品的自动测试系统无法做到统一,增加了测试人员的学习成本,同时在推广应用自动测试过程中发现使用文本编辑器和编程语言编写脚本对于测试人员存在编写效率不高、脚本容易出现编写错误等问题,迫切需要具备可读性较高的自动测试脚本。
既有自动测试软件只能支持单产品,无法做到同一平台适配所有列控产品,同时目前自动测试脚本大多通过文本编辑器和编程语言方式编写脚本,脚本编写效率低,出错概率高。
发明内容
本发明提供一种步骤并行执行的测试方法、装置、电子设备及介质,用以解决现有技术中脚本编写效率低且出错概率高的问题。
本发明提供一种步骤并行执行的测试方法,包括:
获取测试任务;
基于所述测试任务,确定所述测试任务对应的测试脚本结构,所述测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;
基于所述测试脚本结构,执行所述测试任务;
其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系。
在一些实施例中,所述过程元素包括步骤元素、跳转元素和条件元素;
所述步骤元素用于指示执行所述测试任务的测试步骤;
所述跳转元素用于指示不同的步骤之间的跳转;
所述条件元素用于指示执行所述跳转元素的条件。
在一些实施例中,所述过程元素划分为主线过程元素和支线过程元素;所述主线过程元素用于描述测试序列过程,所述支线过程元素用于处理随机事件。
在一些实施例中,所述基于所述测试脚本结构,执行所述测试任务,包括:
基于所述步骤元素之间的执行关系,执行所述测试任务;所述执行关系包括:顺序执行、条件执行和循环执行;
其中,所述顺序执行用于指示所有步骤按照顺序依次执行;
所述条件执行用于指示基于第一预设条件执行所述跳转元素对应的步骤;
所述循环执行用于指示基于第二预设条件循环执行所述跳转元素对应的步骤。
在一些实施例中,所述过程元素与所述执行线程一一对应。
在一些实施例中,所述测试脚本结构对应的脚本语言为XML语言。
本发明还提供一种步骤并行执行的测试装置,包括:
获取模块,用于获取测试任务;
确定模块,用于基于所述测试任务,确定所述测试任务对应的测试脚本结构,所述测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;
执行模块,用于基于所述测试脚本结构,执行所述测试任务;
其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述步骤并行执行的测试方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述步骤并行执行的测试方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述步骤并行执行的测试方法。
本发明提供的步骤并行执行的测试方法、装置、电子设备及介质,通过确定测试任务对应的测试脚本结构,且采用测试任务元素、依赖库元素、变量元素和过程元素构建测试脚本结构,提高测试脚本结构的可读性,提高测试效率,执行对应的测试任务可以缩短测试周期。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的步骤并行执行的测试方法的流程示意图;
图2是本发明提供的步骤并行执行的测试方法的测试脚本结构示意图;
图3是本发明提供的步骤并行执行的测试方法的脚本执行器结构示意图;
图4是本发明提供的步骤并行执行的测试方法的顺序执行流程示意图;
图5是本发明提供的步骤并行执行的测试方法的条件执行示意图;
图6是本发明提供的步骤并行执行的测试方法的循环执行示意图;
图7是本发明提供的步骤并行执行的测试装置的结构示意图;
图8是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1-图8描述本发明的步骤并行执行的测试方法、装置、电子设备及介质。
本发明提供的步骤并行执行的测试方法的执行主体可以是电子设备、电子设备中的部件、集成电路、或芯片。该电子设备可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本发明不作具体限定。
下面以计算机执行本发明提供的步骤并行执行的测试方法为例,详细说明本发明的技术方案。
图1是本发明提供的步骤并行执行的测试方法的流程示意图。参照图1,本发明提供的步骤并行执行的测试方法包括:。
步骤110、获取测试任务;
步骤120、基于测试任务,确定测试任务对应的测试脚本结构,测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;
步骤130、基于测试脚本结构,执行测试任务;
其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系,所有所述过程元素并行执行,各个所述执行线程为并列关系。
本发明可以提供一种城轨列车控制系统单产品的自动测试平台,具备可视化编辑脚本界面和执行界面。
在步骤110中,测试任务指的是对列控设备进行功能测试或数据测试的任务。测试任务可以是由自动测试平台自动生成,也可以是根据用户输入的测试指令生成的,在此不作具体限定。
在步骤120中,读取测试任务,解析出测试任务对应的测试脚本结构。
在一些实施例中,测试脚本结构对应的脚本语言为XML语言。
在实际执行中,测试脚本结构对应的脚本语言可以包括但不限于:可扩展标记语言(Extensible Markup Language,XML)、Python语言和工具命令语言(Tool CommandLanguage,TCL)语言等。其中,XML语言具备灵活性、良好的扩展性和信息处理的明确性等优势。鉴于XML语言的优势,采用XML语言作为自动测试平台的脚本语言,自动测试平台通过执行测试脚本达到验证产品功能的效果。脚本的编辑、解析和执行是本发明的关键。
本发明中的测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建。
在实际执行中,XML语言的测试脚本结构包含测试任务元素、依赖库元素、变量元素和过程元素等。
下面对测试任务元素、依赖库元素、变量元素和过程元素进行详细说明。
如图2所示,测试任务是所有元素的集合,依赖库、变量、过程等元素为测试任务下的子元素,同时过程元素中包含步骤元素和跳转元素。
一、测试任务元素
测试任务元素(Task)描述测试案例,定义了任务标识(Identity Document,ID)和描述属性,便于测试人员记录测试案例信息,具体属性定义见下表1。
表1
属性 | 值类型 | 描述 |
ID | String | 定义测试案例名称,例如:“ID”=“Case-1-12” |
Description | String | 定义测试案例描述信息 |
二、依赖库元素
依赖库元素(Lib)描述测试函数信息,定义了名称(name)和地址(addr)属性,便于测试人员记录测试案例信息,具体属性定义见表2。
表2
属性 | 值类型 | 描述 |
name | String | 定义测试函数库名称 |
addr | String | 定义测试函数库地址,地址一般为绝对路径 |
三、变量元素
变量元素(Var)描述测试案例中需要用到的变量,定义了名称(name)、类型(type)、描述(description)、取值(value)属性,便于测试人员记录测试案例信息,具体属性定义见表3。
表3
四、过程元素
过程元素(Process)描述一个执行线程,定义了名称,描述,运行周期三个属性,具体属性定义见表4。
表4
过程元素是步骤元素、跳转元素和条件元素的集合,正常测试案例下步骤按照先后顺序依次执行,跳转则依靠条件子元素实现过程中的流程控制,通过多个条件实现诸如(for循环、while循环、if判断)等逻辑,修改过程中步骤元素的执行顺序。
在一些实施例中,过程元素与执行线程一一对应。
测试脚本所描述的测试场景可能包含多个同时执行的线程,各个执行线程之间属于并列关系。为适配多种场景,测试任务中可以包含多个过程元素,一个过程元素表示一个执行线程,所有过程元素并行执行。例如被测对象需要连接多个仿真设备,可以将单个仿真设备与被测设备交互过程写入一个过程元素。
在一些实施例中,过程元素划分为主线过程元素和支线过程元素;主线过程元素用于描述测试序列过程,支线过程元素用于处理随机事件。
在实际执行中,也可以将过程元素分为主线过程和支线过程,主线过程描述测试序列过程,支线过程用于处理可能发生的随机事件,例如:执行测试脚本的过程中,列车仿真可能收到的前筛确认信息。
在一些实施例中,所述过程元素包括步骤元素、跳转元素和条件元素;
所述步骤元素用于指示执行所述测试任务的测试步骤;
所述跳转元素用于指示不同的步骤之间的跳转;
所述条件元素用于指示执行所述跳转元素的条件。
五、步骤元素
步骤元素(Step)描述一个测试任务的测试步骤信息,为过程元素的子元素,执行后调用函数库中的函数,定义了名称,动作,描述,参数三个属性,具体属性定义见表5。
表5
六、跳转元素
跳转(Skip)元素描述一个条件信息,为过程元素的子元素,执行后跳转至指定步骤,定义了名称,执行次数属性,具体属性定义见表6。
表6
七、条件元素
条件(Condition)元素描述一个条件信息,为过程元素的子元素,执行后跳转至指定步骤,定义了名称,执行次数属性,具体属性定义见表7。
表7
本发明提供的步骤并行执行的测试方法,通过确定测试任务对应的测试脚本结构,且采用测试任务元素、依赖库元素、变量元素和过程元素构建测试脚本结构,提高测试脚本结构的可读性,提高测试效率,执行对应的测试任务可以缩短测试周期。
如图3所示,本发明还提供一种脚本执行器。
脚本执行器解析XML脚本,根据脚本描述内容调用函数库管理模块310和过程管理模块320。
函数库管理模块310用于存放一个依赖库文件包含的信息,包括函数库管理列表和变量列表。
函数库管理列表是指每个接口函数指令的详细信息,变量列表是指全局变量的详细信息。
下面对函数库管理模块310和过程管理模块320进行说明。
一、函数库管理模块310
首先加载函数库管理模块310中的函数库,进入指定路径找到函数库文件,加载函数库文件中应用程序接口(Application Programming Interface,API)的函数信息,加载成功后可以调用函数库中的方法。例如:创建列车、办理进路或切换列车位置等。
依赖库模型(ApiInterface)的基本结构如表8所示:
表8
名称 | 类型 | 描述 | 是否必须 |
FileName | String | 依赖库文件名称 | 是 |
APIMethodList | List<APiMethod> | 指令列表 | 否 |
VarList | List<Varible> | 全局变量列表 | 否 |
APiMethod为一个API指令:
指令模型于存放初始化后的指令,一条指令对应函数依赖库的一个函数,一个指令应包含以下信息:指令的基本信息、指令的参数信息和指令的返回值信息。
指令的基本信息包括指令中文名称、指令函数名称、指令类型和指令描述;指令的参数信息包括参数中文名称、参数英文名称、参数类型和参数提示信息;指令的返回值信息。
指令模型(APIInterface)的基本结构如表9所示:
表9
ApiParamParam为指令的入参,参数模型的基本结构如表10所示:
表10
Varible对于变量模型,基本结构如表11所示:
表11
二、过程管理模块320
自动测试平台之间多个过程为并行执行关系,过程之间无先后顺序。过程元素中步骤元素之间为顺序执行关系,跳转元素为执行逻辑关键字,通过跳转元素+条件元素组合方式实现条件执行和循环执行
在一些实施例中,基于测试脚本结构,执行测试任务,包括:
基于步骤元素之间的执行关系,执行测试任务;执行关系包括:顺序执行、条件执行和循环执行;
其中,顺序执行用于指示所有步骤按照顺序依次执行;
条件执行用于指示基于第一预设条件执行跳转元素对应的步骤;
循环执行用于指示基于第二预设条件循环执行跳转元素对应的步骤。
下面对顺序执行、条件执行和循环执行进行依次说明。
一、顺序执行
如图4所示,步骤元素之间按顺序顺次执行,步骤元素1执行结束后执行步骤元素2,步骤元素2执行结束后执行步骤元素3,直到执行结束。
二、条件执行
如图5所示,步骤1执行结束后进入跳转元素,跳转元素根据条件元素定义的信息判断当前执行状态是否符合条件1或条件2,符合条件1则跳转至步骤2,符合条件2则跳转至步骤3。当同时符合两个条件时以定义的首个条件为准,也就是示例中的条件1。其中,条件元素1和条件元素2即为第一预设条件,具体条件内容可以根据实际情况设置,在此不作具体限定。
三、循环执行
如图6所示,步骤元素1执行结束后进入跳转元素,条件元素1中定义循环次数为n,目的步骤为步骤元素1;执行器第一次进入跳转元素后触发计数器,执行n次后自动按顺序跳转至步骤元素2,也可以定义条件元素2,通过判断条件元素跳转至其他步骤。其中,条件元素1和条件元素2即为第二预设条件,具体条件内容可以根据实际情况设置,在此不作具体限定。
本发明提供了基于XML语言的测试脚本结构还提供了自动测试执行器设计方法。用户可以通过阅读脚本方式了解测试案例,明白测试人员意图,同时可以缩短测试周期:通过执行脚本方式验证产品功能,缩短回归测试周期。
以XML语言脚本为例,来说明测试任务的执行过程。
/>
下面对本发明提供的步骤并行执行的测试装置进行描述,下文描述的步骤并行执行的测试装置与上文描述的步骤并行执行的测试方法可相互对应参照。
图7是本发明提供的步骤并行执行的测试装置的结构示意图。参照图7,本发明提供的步骤并行执行的测试装置包括:
获取模块710,用于获取测试任务;
确定模块720,用于基于所述测试任务,确定所述测试任务对应的测试脚本结构,所述测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;
执行模块730,用于基于所述测试脚本结构,执行所述测试任务;
其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系。
本发明提供的步骤并行执行的测试装置,通过确定测试任务对应的测试脚本结构,且采用测试任务元素、依赖库元素、变量元素和过程元素构建测试脚本结构,提高测试脚本结构的可读性,提高测试效率,执行对应的测试任务可以缩短测试周期。
在一些实施例中,所述过程元素包括步骤元素、跳转元素和条件元素;
所述步骤元素用于指示执行所述测试任务的测试步骤;
所述跳转元素用于指示不同的步骤之间的跳转;
所述条件元素用于指示执行所述跳转元素的条件。
在一些实施例中,所述过程元素划分为主线过程元素和支线过程元素;所述主线过程元素用于描述测试序列过程,所述支线过程元素用于处理随机事件。
在一些实施例中,所述执行模块730,具体用于:
基于所述步骤元素之间的执行关系,执行所述测试任务;所述执行关系包括:顺序执行、条件执行和循环执行;
其中,所述顺序执行用于指示所有步骤按照顺序依次执行;
所述条件执行用于指示基于第一预设条件执行所述跳转元素对应的步骤;
所述循环执行用于指示基于第二预设条件循环执行所述跳转元素对应的步骤。
在一些实施例中,所述过程元素与所述执行线程一一对应。
在一些实施例中,所述测试脚本结构对应的脚本语言为XML语言。
图8示例了一种电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行步骤并行执行的测试方法,该方法包括:
获取测试任务;
基于所述测试任务,确定所述测试任务对应的测试脚本结构,所述测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;
基于所述测试脚本结构,执行所述测试任务;
其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的步骤并行执行的测试方法,该方法包括:
获取测试任务;
基于所述测试任务,确定所述测试任务对应的测试脚本结构,所述测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;
基于所述测试脚本结构,执行所述测试任务;
其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的步骤并行执行的测试方法,该方法包括:
获取测试任务;
基于所述测试任务,确定所述测试任务对应的测试脚本结构,所述测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;
基于所述测试脚本结构,执行所述测试任务;
其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种步骤并行执行的测试方法,其特征在于,包括:
获取测试任务;
基于所述测试任务,确定所述测试任务对应的测试脚本结构,所述测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;
基于所述测试脚本结构,执行所述测试任务;
其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系。
2.根据权利要求1所述的步骤并行执行的测试方法,其特征在于,所述过程元素包括步骤元素、跳转元素和条件元素;
所述步骤元素用于指示执行所述测试任务的测试步骤;
所述跳转元素用于指示不同的步骤之间的跳转;
所述条件元素用于指示执行所述跳转元素的条件。
3.根据权利要求1所述的步骤并行执行的测试方法,其特征在于,所述过程元素划分为主线过程元素和支线过程元素;所述主线过程元素用于描述测试序列过程,所述支线过程元素用于处理随机事件。
4.根据权利要求2所述的步骤并行执行的测试方法,其特征在于,所述基于所述测试脚本结构,执行所述测试任务,包括:
基于所述步骤元素之间的执行关系,执行所述测试任务;所述执行关系包括:顺序执行、条件执行和循环执行;
其中,所述顺序执行用于指示所有步骤按照顺序依次执行;
所述条件执行用于指示基于第一预设条件执行所述跳转元素对应的步骤;
所述循环执行用于指示基于第二预设条件循环执行所述跳转元素对应的步骤。
5.根据权利要求1-4任一项所述的步骤并行执行的测试方法,其特征在于,所述过程元素与所述执行线程一一对应。
6.根据权利要求1-4任一项所述的步骤并行执行的测试方法,其特征在于,所述测试脚本结构对应的脚本语言为XML语言。
7.一种步骤并行执行的测试装置,其特征在于,包括:
获取模块,用于获取测试任务;
确定模块,用于基于所述测试任务,确定所述测试任务对应的测试脚本结构,所述测试脚本结构基于测试任务元素、依赖库元素、变量元素和过程元素构建;
执行模块,用于基于所述测试脚本结构,执行所述测试任务;
其中,所述测试任务元素用于描述所述测试任务对应的测试案例,所述依赖库元素用于描述所述测试任务对应的测试函数信息、所述变量元素用于描述所述测试案例中需要用到的变量,所述过程元素用于描述所述测试任务对应的执行线程,所有所述过程元素并行执行,各个所述执行线程为并列关系。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述步骤并行执行的测试方法。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述步骤并行执行的测试方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述步骤并行执行的测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311615792.9A CN117743150A (zh) | 2023-11-29 | 2023-11-29 | 步骤并行执行的测试方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311615792.9A CN117743150A (zh) | 2023-11-29 | 2023-11-29 | 步骤并行执行的测试方法、装置、电子设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117743150A true CN117743150A (zh) | 2024-03-22 |
Family
ID=90255333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311615792.9A Pending CN117743150A (zh) | 2023-11-29 | 2023-11-29 | 步骤并行执行的测试方法、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117743150A (zh) |
-
2023
- 2023-11-29 CN CN202311615792.9A patent/CN117743150A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107506300B (zh) | 一种用户界面测试方法、装置、服务器和存储介质 | |
US9465718B2 (en) | Filter generation for load testing managed environments | |
CN105446874B (zh) | 一种资源配置文件的检测方法和装置 | |
CN112052172B (zh) | 第三方通道的快速测试方法、装置和电子设备 | |
CN109522228B (zh) | 接口自动化测试数据构造方法、装置、平台及存储介质 | |
CN106909498A (zh) | 一种Java程序注入故障的方法和系统 | |
CN112882930B (zh) | 自动化测试方法、装置、存储介质及电子设备 | |
CN112286814A (zh) | 一种测试用例脚本的自动化生成系统及方法 | |
CN115510804A (zh) | 全芯片管脚复用自动化验证方法、装置、设备及存储介质 | |
CN113505895B (zh) | 一种机器学习引擎服务系统及模型训练方法和配置方法 | |
CN110554956B (zh) | 一种bdms自动化测试方法 | |
US6845440B2 (en) | System for preventing memory usage conflicts when generating and merging computer architecture test cases | |
US20140143745A1 (en) | Techniques for segmenting of hardware trace and verification of individual trace segments | |
CN116841898A (zh) | 一种测试用例和测试脚本生成方法、装置、系统和介质 | |
CN117743150A (zh) | 步骤并行执行的测试方法、装置、电子设备及介质 | |
CN116107625A (zh) | 流程设计方法、装置、设备、存储介质及程序产品 | |
EP2820547B1 (en) | Debugging method and computer program product | |
CN115658482A (zh) | 数据库测试方法及装置、电子设备及计算机可读存储介质 | |
US20200349304A1 (en) | Method, apparatus, device, and medium for implementing simulator | |
CN109800155B (zh) | 一种基于Probe的QTE联锁应用软件测试方法及装置 | |
US20150121342A1 (en) | Method of thread safety verification and feedback | |
CN112347723B (zh) | 基于版图的rom代码提取验证方法及装置 | |
CN112214412B (zh) | 一种测试报告的生成方法和装置 | |
CN113918455A (zh) | 测试用例自动转换方法、装置、电子设备及存储介质 | |
CN111913888A (zh) | 函数生成方法、自动测试方法、电子设备及存储介质 |
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 |