本发明涉及智能网联汽车,特别是涉及一种测试用例生成方法、测试管理方法、装置、系统及存储介质。
背景技术:
1、软件定义汽车(sdv)成为智能汽车发展的新航向。智能化场景车载软件产品是当前各车企sdv实践主流切入点。当前,车载软件架构处于从软硬件高度耦合到面向服务(service-oriented architecture,soa)的转变。与传统车载软件开发相比,基于soa的智能化场景车载软件更依赖将车、云端标准化服务接口,松耦合的服务机制以及可组合扩展的服务特性,使得开发人员能以更小的软件变更应对迭代多变的客户需求。
2、但智能化场景车载软件架构独特的分布式以及多个独立功能实体所组成的特征,都会为之后自动化测试尤其是测试用例的设计工作带来较多的挑战。
技术实现思路
1、本发明所要解决的技术问题在于,提供一种测试用例生成方法、测试管理方法、装置、系统及存储介质。基于图形化的用例编辑工具,可以实现智能化场景的车载软件开发自动化测试,使用户更直观更简单的进行用例设计与变更,能提高测试过程及车载软件设计的效率。
2、为解决上述技术问题,作为本发明的一方面,提供一种测试用例的生成方法,其包括如下步骤:
3、在图形化工具中,针对每一车型的车载软件中的所选定的功能,编辑形成一测试模型,包括编辑所述测试模型对应的场景、交互和服务内容,并建立三者之间的逻辑流程关系;
4、在所述测试模型中,对于场景、交互、服务内容分别创建对应断言,并串接加入所述逻辑流程关系中;
5、进行测试资源调度,为所述测试模型配置相匹配的用例执行环境;
6、将所述测试模型编译成可自动执行的脚本并执行,在所有断言成功后,将所述测试模型加入至测试用例库。
7、其中,在图形化工具中,针对每一车型的车载软件中的所选定的功能,基于三元方式编辑形成一测试模型,至少包括编辑所述测试模型对应的场景、交互和服务内容,并建立三者之间的逻辑流程关系,进一步包括:
8、解析所选定的功能,获得所述功能对应的编辑内容,包括对应的场景、交互和服务内容;
9、针对所选定的功能对应的场景,生成一场景操作图标,在所述场景操作图标上关联相应的场景采集接口,并编辑场景目标内容;
10、针对所选定的功能对应的交互,生成一交互操作图标,在所述场景操作图标上关联相应交互接口,并编辑交互状态及内容值;
11、针对所选定的功能对应的服务,生成一服务操作图标,所述场景操作图标上关联相应服务接口,并编辑服务目标内容;
12、采用连线的方式,连接所述场景操作图标、交互操作图标以及服务操作图标,创建三者之间的逻辑流程关系。
13、其中,在所述测试模型中,对于场景、交互、服务内容分别创建对应断言,并串接加入所述逻辑流程关系中,其中每一断言均包含元方法、运算方式及参数的内容,进一步包括:
14、对于每一场景、交互、服务内容,分别创建对应断言,每一断言均包含元方法、运算方式及参数的内容;
15、其中,所述元方法为所述场景、交互、服务内容对应的整车状态信号、各种交互状态与内容的实现方法;所述运算方式为基于元方法获取的信号与参数组之间的逻辑判断操作;所述参数为基于元方法获取信号的参数取值组合;
16、在场景操作图标、交互操作图标以及服务操作图标后串接所创建的对应断言,更新所述用例逻辑流程。
17、其中,将所述测试模型编译成可自动执行的脚本并执行,在所有断言成功后,将所述测试模型加入至测试用例库,进一步包括:
18、在所述测试通过后,采用测试结果采集功能对测试模型中各组成部分进行单独信息采集、对每个断言进行单独信息采集;
19、将采集信息以结构体形式返回。
20、相应地,作为本发明的另一方面,还提供一种测试管理方法,用于对智能场景的车载软件进行自动化测试,其包括如下步骤:
21、获得测试计划,选择测试车型,打开对应测试用例库,挑选测试环境需求相同的测试用例关联到所述测试计划下;其中,所述测试用例采用如前述的方法所获得;
22、获得测试计划下测试用例对应的脚本并进行编排;
23、顺序执行各测试用例对应的脚本,并按顺序采集执行过程中的相关信息;
24、根据所述脚本结构形成测试报告并展示。
25、相应地,作为本发明的再一方面,还提供一种测试用例的生成装置,其包括:
26、测试模型创建单元,用于针对每一车型的车载软件中的所选定的功能,编辑形成一测试模型,包括编辑所述测试模型对应的场景、交互和服务内容,并建立三者之间的逻辑流程关系;
27、断言创建处理单元,用于在所述测试模型中,对于场景、交互、服务内容分别创建对应断言,并串接加入所述逻辑流程关系中;
28、测试资源配置单元,用于进行测试资源调度,为所述测试模型配置相匹配的用例执行环境;
29、测试用例检测单元,用于将所述测试模型编译成可自动执行的脚本并执行,在所有断言成功后,将所述测试模型加入至测试用例库。
30、其中,所述测试模型创建单元进一步包括:
31、解析处理单元,用于解析所选定的功能,获得所述功能对应的编辑内容,包括对应的场景、交互和服务内容;
32、场景操作图标生成单元,用于针对所选定的功能对应的场景,生成一场景操作图标,在所述场景操作图标上关联相应的场景采集接口,并编辑场景目标内容;
33、交互操作图标生成单元,用于针对所选定的功能对应的交互,生成一交互操作图标,在所述场景操作图标上关联相应交互接口,并编辑交互状态及内容值;
34、服务操作图标生成单元,用于针对所选定的功能对应的服务,生成一服务操作图标,所述场景操作图标上关联相应服务接口,并编辑服务目标内容;
35、逻辑流程建立单元,用于采用连线的方式,连接所述场景操作图标、交互操作图标以及服务操作图标,创建三者之间的逻辑流程关系。
36、其中,所述断言创建处理单元进一步包括:
37、断言生成单元,用于对于每一场景、交互、服务内容,分别创建对应断言,每一断言均包含元方法、运算方式及参数的内容;
38、其中,所述元方法为所述场景、交互、服务内容对应的整车状态信号、各种交互状态与内容的实现方法;所述运算方式为基于元方法获取的信号与参数组之间的逻辑判断操作;所述参数为基于元方法获取信号的参数取值组合;
39、串接处理单元,用于在场景操作图标、交互操作图标以及服务操作图标后串接所创建的对应断言,更新所述用例逻辑流程。
40、其中,所述测试用例检测单元进一步包括:
41、编译执行单元,用于将所述测试模型编译成可自动执行的脚本并执行;
42、执行信息采集单元,用于在所述测试通过后,采用测试结果采集功能对测试模型中各组成部分进行单独信息采集、对每个断言进行单独信息采集,并将采集信息以结构体形式返回;
43、测试用例确定单元,用于在所有断言成功后,将所述测试模型加入至测试用例库。
44、相应地,作为本发明的再一方面,还提供一种测试管理系统,用于对智能场景的车载软件进行自动化测试,其包括:
45、交互管理子系统,用于提供人机交互的可视化界面及低代码建模工具;
46、测试管理子系统,其包括测试管理模块、系统管理模块、数据管理模块;其中,所述测试管理模块用于负责进行测试流程的定义、编辑与发起,并根据测试结果会自动生成测试报告;系统管理模块用于负责对系统用户、角色、权限进行管控;数据管理模块用于对用例所涉服务参数组、断言数据组及其与各车型、系统、产品的逻辑关系进行管理;
47、整车服务管理子系统,用于负责同步整车soa服务的接口或者总线上对应整车功能信号映射的接口,支持与canoe(can open environment,can总线开发环境)连接用于硬件在环测试(hardware-in-the-loop,hil)或者直接连接软件在环测试(software-in-the-loop,sil)的测试环境;
48、其中,在测试管理模块中部署有如权利要求6至9任一项所述的测试用例的生成装置。
49、作为本发明的再一方面,还提供一种计算机可读存储介质,其内存储有计算机指令,所述计算机指令被处理器执行时实现如前述的方法。
50、实施本发明实施例,具有如下的有益效果:
51、本发明通过一种基于智能化场景的车载软件自动化测试管理方法。通过在在图形化工具中,利用测试模型创建单元基于“场景-交互-服务”范式构建测试模型;同时利用断言创建处理单元,针对三元结构测试模型的核心节点及节点描述的参数组,其基于“元方法-运算方式-参数”创建相应的断言,并添加至测试模型的各操作之后。从而可以构建便于管理、辅助设计、快速执行、数据复用的自动化测试环境,可以降低测试的时间和人力成本。
52、在本发明实施例中,在用例设计、执行流程与数据管理、案例编写、测试流程相结合,基于图形化的用例编辑工具,使用户更直观更简单的进行用例设计与变更,全方面的测试数据采集功能让测试人员能全面掌握测试过程中的信息流,有利于定位问题并进行针对性的设计变更。
53、在本发明的实施例中,配置测试环境时,可以把相同测试环境的用例进行关联,形成自动化测试计划,可通过执行测试计划实现系列用例的自动化执行与报告自动生成,可以减少大量重复性工作;
54、同时,测试人员在图形化界面下对待测模型、断言的参数作差异化设置,可实现对不同版本不同车型的软件进行用例管理。