System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及功能安全,具体而言,本申请涉及一种软件测试库生成方法、装置、设备、介质以及程序产品。
技术介绍
1、在车载、工业控制等领域,随着电子硬件、软件系统的大量使用,大大提高了系统的自动化程度。同时,由于设计复杂性过高、风险管理意识不足、设备老化等各种原因,整体系统的故障率也随之提升。为此,一项为实现成熟的产品安全设计技术应运而生,即:“功能安全”技术。通过该技术避免产品因功能性故障而产生不可预知风险。相应的,各种为功能安全而制定的各种标准也随之而生,这些标准对应的硬件产品在某些要求下,需要使用软件测试库(software test library,即stl)进行功能安全测试以确保其满足功能安全需求。
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、本申请提供一种软件测试库生成方法,具体地,本申请实施例在获取到待测试硬件对应的测试规则后,可以根据测试规则生成测试序列、数据生成工具,并利用测试序列、数据生成工具生成测试数据,进而利用该测试数据以及获取的目标执行器得到软件测试库,基于该软件测试库的测试结果得到目标软件测试库。本申请实施例将软件测试库的获取拆分为测试数据和目标执行器的获取,并基于测试规则对应的测试序列获取测试数据,实现了代码与测试数据的拆分,便于通过修改测试序列的方式适应产品的测试需求变化和测试结果的快速迭代,降低重新编写测试代码的次数,减少测试时间,有效降低测试成本,提升测试效率。
本文档来自技高网...【技术保护点】
1.一种软件测试库生成方法,其特征在于,包括:
2.根据权利要求1所述的软件测试库生成方法,其特征在于,所述获取待测试硬件对应的测试规则,包括:
3.根据权利要求2所述的软件测试库生成方法,其特征在于,所述获取所述测试规则对应的测试序列、数据生成工具,包括:
4.根据权利要求3所述的软件测试库生成方法,其特征在于,所述利用所述数据生成工具解析所述测试序列生成测试数据,包括:
5.根据权利要求1所述的软件测试库生成方法,其特征在于,所述获取所述软件测试库的测试结果,包括:
6.根据权利要求5所述的软件测试库生成方法,其特征在于,所述根据所述测试结果获取目标软件测试库,包括:
7.根据权利要求1所述的软件测试库生成方法,其特征在于,所述方法还包括:
8.一种软件测试库生成装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现如权利要求1-7任一项所述方法的步骤。
10.一种计算机可读存储介质,其
11.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述方法的步骤。
...【技术特征摘要】
1.一种软件测试库生成方法,其特征在于,包括:
2.根据权利要求1所述的软件测试库生成方法,其特征在于,所述获取待测试硬件对应的测试规则,包括:
3.根据权利要求2所述的软件测试库生成方法,其特征在于,所述获取所述测试规则对应的测试序列、数据生成工具,包括:
4.根据权利要求3所述的软件测试库生成方法,其特征在于,所述利用所述数据生成工具解析所述测试序列生成测试数据,包括:
5.根据权利要求1所述的软件测试库生成方法,其特征在于,所述获取所述软件测试库的测试结果,包括:
6.根据权利要求5所述的软件测试库生成方法,其特征在于,所述根据所述测试结果获取目标软件测...
【专利技术属性】
技术研发人员:马振克,何俊,沈卫杰,
申请(专利权)人:安谋科技中国有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。