一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种测试覆盖度确定方法、装置及设备与流程

2022-06-29 21:47:45 来源:中国专利 TAG:


1.本发明涉及汽车控制器测试技术领域,特别涉及一种测试覆盖度确定方法、装置及设备。


背景技术:

2.随着汽车技术的迅速发展,以电动汽车为主的新能源汽车已经逐步打开市场,进入人们的生活。消费者对电动车的要求也越来越高,要求电动车越来越智能化,随着软件应用领域的拓宽和应用程度的加深,以及软件本身的规模和复杂度的增加,软件质量对整个产品和工程质量的影响越来越大,测试作为软件质量的保障手段,显得尤为重要。测试覆盖度是度量测试完整性的一个手段,同时也是测试技术有效性的一个度量,通过测试覆盖度数据,可以检测我们的测试是否充分,分析出测试的弱点,指导测试人员设计能够增加覆盖率的测试用例,有效提高测试质量。
3.测试覆盖率按照测试方法可以划分为两大类:白盒测试和黑盒测试,目前针对白盒测试已经有一些自动计算测试覆盖度的工具,比如vectorcast,但是对于黑盒测试也就是功能测试则没有可以自动计算测试覆盖的方法。


技术实现要素:

4.本发明实施例提供一种测试覆盖度确定方法、装置及设备,用以解决如何获取测试用例的测试覆盖度的问题。
5.为了解决上述技术问题,本发明实施例提供一种测试覆盖度确定方法,包括:
6.确定车辆控制器的待测试信息中的目标测试项,以及测试用例中的实际测试项,其中所述目标测试项包括至少两种类型;
7.根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度。
8.进一步地,在所述目标测试项的类型包括功能类型时,所述确定车辆控制器的待测试信息中的目标测试项包括:
9.确定功能定义模板,其中,所述功能定义模板包括:功能定义序号、功能名称和功能编号;
10.根据所述功能定义模板,确定所述目标测试项。
11.进一步地,在所述目标测试项的类型包括功能类型时,确定测试用例中的实际测试项包括:
12.确定所述测试用例的测试用例定义模板,其中,所述测试用例定义模板包括:测试用例序号、功能名称、功能编号和测试用例名称;
13.根据所述测试用例定义模板,确定所述实际测试项。
14.进一步地,根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度,包括:
15.按照所述实际测试项中的测试用例序号的顺序,依次确定所述目标测试项中的每
一所述功能名称是否被所述实际测试项所覆盖的覆盖信息;
16.根据所述覆盖信息,确定所述目标测试项的测试覆盖度。
17.进一步地,在所述目标测试项的类型包括信号类型时,所述确定目标测试项包括:
18.获取功能定义配置表;
19.筛选所述功能定义配置表中的信号。
20.进一步地,在所述目标测试项的类型包括信号类型时,确定测试用例中的实际测试项包括:
21.对所述测试用例中的信号进行遍历并将重复的信号进行合并,获取所述实际测试项;
22.对所述实际测试项中的信号进行编号。
23.进一步地,在所述根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度之前,所述方法还包括:
24.获取控制器局域网数据库dbc文件;
25.根据所述信号和所述dbc文件,确定所述信号的类型、最值和分辨率,其中所述类型包括离散型和连续型;
26.根据所述信号的类型、最值和分辨率确定所述待测试信号取值信息的预期取值信息;
27.根据所述信号的名称,从所述测试用例中获取所述信号的实际取值信息。
28.进一步地,所述根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度,包括:
29.根据所述预期取值信息和所述实际取值信息,确定所述目标测试项的信号取值的测试覆盖度,其中,所述测试覆盖度等于所述实际取值信息与所述预期取值信息的比值。
30.进一步地,所述根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度,还包括:
31.按照所述信号的编号顺序,依次确定所述目标测试项中的每一信号是否被所述实际测试项所覆盖的覆盖信息;
32.根据所述覆盖信息,确定所述目标测试项的信号的测试覆盖度。
33.本发明实施例还提供一种测试覆盖度确定装置,包括:
34.第一确定模块,用于确定车辆控制器的待测试信息中的目标测试项,以及测试用例中的实际测试项,其中所述目标测试项包括至少两种类型;
35.第二确定模块,根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度。
36.本发明实施例还提供一种设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的测试覆盖度确定方法。
37.本发明的有益效果是:
38.上述方案,通过确定目标测试项和实际测试项,进而确定目标测试项的测试覆盖度,能够快速查看待测试信息中的目标测试项在测试用例中的覆盖情况,确定测试用例的测试充分性,从而提高测试质量。
附图说明
39.图1表示本发明实施例的测试覆盖度确定方法的流程示意图之一;
40.图2表示本发明实施例的测试覆盖度确定方法的流程示意图之二;
41.图3表示本发明实施例的测试覆盖度确定装置的结构示意图。
具体实施方式
42.为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。在下面的描述中,提供诸如具体的配置和组件的特定细节仅仅是为了帮助全面理解本发明的实施例。因此,本领域技术人员应该清楚,可以对这里描述的实施例进行各种改变和修改而不脱离本发明的范围和精神。另外,为了清楚和简洁,省略了对已知功能和构造的描述。
43.应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
44.在本发明的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
45.本发明针对如何获取测试用例的测试覆盖度的问题,提供一种测试覆盖度确定方法、装置及设备。
46.如图1所示,本发明实施例提供一种测试覆盖度确定方法,包括:
47.步骤11,确定车辆控制器的待测试信息中的目标测试项,以及测试用例中的实际测试项,其中所述目标测试项包括至少两种类型;
48.这里,目标测试项的类型包括功能类型和信号类型。目标测试项是在对车辆控制器进行测试时需要测试的项目信息,测试用例是测试工程师在测试所述车辆控制器时对测试任务的描述,根据所述测试用例可以得到在运行所述测试用例时实际测试的项目信息。
49.步骤12,根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度。
50.这里,对应于目标测试项的类型不同,所述测试覆盖度包括至少两种类型,其中,在所述目标测试项的类型为功能类型时,所述测试覆盖度为功能覆盖度,在所述目标测试项为信号类型时,所述测试覆盖度为信号覆盖度。
51.本发明实施例通过确定目标测试项和实际测试项,进而确定目标测试项的测试覆盖度,能够快速查看待测试信息中的目标测试项在测试用例中的覆盖情况,确定测试用例的测试充分性,从而提高测试质量。
52.具体地,在所述目标测试项的类型包括功能类型时,所述步骤11中确定车辆控制器的待测试信息中的目标测试项包括:
53.确定功能定义模板,其中,所述功能定义模板包括:功能定义序号、功能名称和功能编号;
54.根据所述功能定义模板,确定所述目标测试项。
55.需要说明的是,所述车辆控制器可以有多种功能,因此所述待测试信息可以是多种功能,此时,待测试信息中的目标测试项是多种功能或一种功能,为了便于进行遍历,首先确定用于存储所述目标测试项的功能定义模板,具体包括功能定义序号、功能名称和功能编号,进一步地,对于某种功能,还可能包括多种子功能,因此功能定义模板还包括子功能名称和子功能编号。例如,目标测试项为充电和续航里程,则充电的功能编号为1,续航里程的功能编号为2,在充电这一功能下还包括子功能:快充和慢充,则快充的子功能编号为1-1,慢充的子功能编号为1-2。那么根据所述功能定义模板,确定的目标测试项如表1所示。
56.表1
57.功能定义序号功能名称功能编号子功能名称子功能编号1充电1快充1-12充电1慢充1-23续航里程2
ꢀꢀ
58.具体地,在所述目标测试项的类型包括功能类型时,确定测试用例中的实际测试项包括:
59.确定所述测试用例的测试用例定义模板,其中,所述测试用例定义模板包括:测试用例序号、功能名称、功能编号和测试用例名称;
60.根据所述测试用例定义模板,确定所述实际测试项。
61.需要说明的是,首先确定用于存储所述实际测试项的测试用例定义模板,具体包括测试用例序号、功能名称、功能编号和测试用例名称,进一步地,对于某种功能,还可能包括多种子功能,因此功能定义模板还包括子功能名称和子功能编号。例如,实际测试项为充电和续航里程,则充电的功能编号为1,续航里程的功能编号为2,在充电这一功能下还包括子功能:快充,则快充的子功能编号为1-1,那么根据所述测试用例定义模板,确定的实际测试项如表2所示。
62.表2
[0063][0064]
具体地,根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度,包括:
[0065]
按照所述实际测试项中的测试用例序号的顺序,依次确定所述目标测试项中的每一所述功能名称是否被所述实际测试项所覆盖的覆盖信息;
[0066]
根据所述覆盖信息,确定所述目标测试项的测试覆盖度。
[0067]
需要说明的是,按照所述实际测试项中的测试用例序号的顺序,依次确定所述目标测试项中的每一所述功能名称是否被所述实际测试项所覆盖的覆盖信息,例如,从表2的测试用例序号1开始,依次确定表1中的功能名称是否被表2中的功能名称所覆盖,这里,测试用例序号1的子功能名称为快充,则表1中的功能定义序号为1的目标测试项被覆盖,测试
用例序号2的功能名称为续航里程,则表1中的功能序号为3的目标测试项被覆盖。此时,已经对实际测试项中的测试用例序号进行了遍历,可以确定目标测试项中功能定义序号为2的目标测试项没有被覆盖,从而可以确定测试覆盖度为2
÷3×
100%=66.7%。
[0068]
进一步需要说明的是,通过采用自上而下逐个遍历的遍历方式,可以逐个检测是否对某条子功能进行覆盖,进而自动计算测试覆盖度即功能覆盖度,得到覆盖度报告,提高覆盖度检测效率,快速查看需求覆盖情况,快速定位哪个功能定义中的哪个子功能未被覆盖的情况,进而采取有效的防范措施,控制测试质量的完整性。
[0069]
具体地,在所述目标测试项的类型包括信号类型时,所述确定目标测试项包括:
[0070]
获取功能定义配置表;
[0071]
筛选所述功能定义配置表中的信号。
[0072]
需要说明的是,在所述功能定义配置表中包括车辆控制器中各种功能以及实现该功能的各种信号。故通过对所述功能定义配置表进行筛选,可以确定目标测试项中的信号。
[0073]
具体地,在所述目标测试项的类型包括信号类型时,确定测试用例中的实际测试项包括:
[0074]
对所述测试用例中的信号进行遍历并将重复的信号进行合并,获取所述实际测试项;
[0075]
对所述实际测试项中的信号进行编号。
[0076]
需要说明的是,通过对测试用例中的信号进行遍历可以确定测试用例中用到的信号,具体地,为了防止重复信号,还需要将遍历得到的信号中的重复信号进行合并。
[0077]
具体地,在目标测试项的类型为信号类型时,所述信号覆盖度不仅包括信号覆盖是否完整,还包括某一个信号的取值是否覆盖完整,因此,在所述根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度之前,所述方法还包括:
[0078]
获取控制器局域网数据库dbc文件;
[0079]
根据所述信号和所述dbc文件,确定所述信号的类型、最值和分辨率,其中所述类型包括离散型和连续型;
[0080]
根据所述信号的类型、最值和分辨率确定所述待测试信号取值信息的预期取值信息;
[0081]
根据所述信号的名称,从所述测试用例中获取所述信号的实际取值信息。
[0082]
需要说明的是,通过dbc文件,可以确定所述信号的类型、最值和分辨率,类型包括离散型和连续型,例如,在信号为挡位信号时,通过dbc文件可以确定档位信号的类型为离散型信号,最值中最大值为6,最小值为0,分辨率为1则档位信号包括:0、1、2、3、4、5、6;在信号为整车state时,通过dbc文件可以确定档位信号的类型为连续型信号,最值中最大值为255,最小值为0,分辨率为1则档位信号包括:0至255中间隔为1的各个值。
[0083]
进一步需要说明的是,通过所述信号的名称,从测试用例文件中可以确定所述信号的实际取值信息。例如,档位信号的实际取值信息为:0、1、2、3、4、5。
[0084]
具体地,所述根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度,包括:
[0085]
根据所述预期取值信息和所述实际取值信息,确定所述目标测试项的信号取值的测试覆盖度,其中,所述测试覆盖度等于所述实际取值信息与所述预期取值信息的比值。
[0086]
需要说明的是,针对离散型信号,信号类型中每个取值都要覆盖到,设置预期取值信息,然后以信号名称为关键字遍历测试用例库中所涉及到的某个信号的取值,离散型信号覆盖度等于测试用例库中所涉及到的信号取值即实际取值信息与预期取值信息的比值。针对连续型信号,信号类型中每个取值按照等价类、边界取值的方法,设置预期取值信息,然后以信号名称为关键字遍历测试用例库中所涉及到的某个信号的取值,连续型信号覆盖度等于测试用例库中所涉及到的信号取值即实际取值信息与预期取值信息的比值。例如,档位信号的预期取值信息为:0、1、2、3、4、5、6;档位信号的实际取值信息为:0、1、2、3、4、5。则,所述档位信号的取值覆盖度为5
÷6×
100%=83.3%。
[0087]
具体地,所述根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度,还包括:
[0088]
按照所述信号的编号顺序,依次确定所述目标测试项中的每一信号是否被所述实际测试项所覆盖的覆盖信息;
[0089]
根据所述覆盖信息,确定所述目标测试项的信号的测试覆盖度。
[0090]
需要说明的是,按照所述信号的编号顺序,逐个遍历目标测试项中的信号,从而确定所述目标测试项中的信号是否被实际测试项中的信号所覆盖。这里,若目标测试项中的信号数量为l1,通过遍历确定的目标测试项中被实际测试项所覆盖的信号数量为l2,则所述目标测试项中的信号的测试覆盖度为l2/l1。
[0091]
本发明实施例在目标测试项为信号时,为了获取测试覆盖度,如图2所示,包括如下步骤:
[0092]
步骤21,识别目标测试项的信号;
[0093]
步骤22,确定信号类型和信号分类;
[0094]
步骤23,计算单信号的取值覆盖度;
[0095]
步骤24,计算信号覆盖度。
[0096]
具体地,在计算单信号的取值覆盖度和信号覆盖度时,均是通过遍历测试用例得到。在计算取值覆盖度时,首先确定信号的预期取值信息,然后通过遍历测试用例得到所述信号的实际取值信息,取值覆盖度等于所述实际取值信息与所述预期取值信息的比值;在计算信号覆盖度时,首先确定信号数量l1,然后通过遍历测试用例得到被实际测试项所覆盖的信号数量l2,则信号覆盖度等于l2与l1比值。
[0097]
进一步需要说明的是,在目标测试项类型为信号类型时,通过自动识别功能定义配置中未被覆盖的信号,确定信号的测试覆盖度,针对测试用例中已经使用的到信号,能够自动计算离散型信号和连续型信号的信号取值的测试覆盖度,从而提升信号测试的测试完整性,检测测试充分性,分析出测试需要强化的内容,从而有效提高测试质量。
[0098]
如图3所示,本发明实施例还提供一种测试覆盖度确定装置,包括:
[0099]
第一确定模块31,用于确定车辆控制器的待测试信息中的目标测试项,以及测试用例中的实际测试项,其中所述目标测试项包括至少两种类型;
[0100]
第二确定模块32,根据所述目标测试项和所述实际测试项,确定所述目标测试项的测试覆盖度。
[0101]
需要说明的是,本发明实施例通过确定目标测试项和实际测试项,进而确定目标测试项的测试覆盖度,能够快速查看待测试信息中的目标测试项在测试用例中的覆盖情
况,确定测试用例的测试充分性,从而提高测试质量。
[0102]
具体地,在所述目标测试项的类型包括功能类型时,所述第一确定模块31,包括:
[0103]
第一确定单元,用于确定功能定义模板,其中,所述功能定义模板包括:功能定义序号、功能名称和功能编号;
[0104]
第二确定单元,用于根据所述功能定义模板,确定所述目标测试项。
[0105]
所述第一确定模块31,还包括:
[0106]
第三确定单元,用于确定所述测试用例的测试用例定义模板,其中,所述测试用例定义模板包括:测试用例序号、功能名称、功能编号和测试用例名称;
[0107]
第四确定单元,用于根据所述测试用例定义模板,确定所述实际测试项。
[0108]
具体地,第二确定模块32,包括:
[0109]
第五确定单元,用于按照所述实际测试项中的测试用例序号的顺序,依次确定所述目标测试项中的每一所述功能名称是否被所述实际测试项所覆盖的覆盖信息;
[0110]
第六确定单元,用于根据所述覆盖信息,确定所述目标测试项的测试覆盖度。
[0111]
具体地,在所述目标测试项的类型包括信号类型时,所述第一确定模块31,包括:
[0112]
第一获取单元,用于获取功能定义配置表;
[0113]
筛选单元,用于筛选所述功能定义配置表中的信号。
[0114]
具体地,所述第一确定模块31,还包括:
[0115]
第二获取单元,用于对所述测试用例中的信号进行遍历并将重复的信号进行合并,获取所述实际测试项;
[0116]
处理单元,用于对所述实际测试项中的信号进行编号。
[0117]
具体地,所述装置还包括:
[0118]
第一获取模块,用于获取控制器局域网数据库dbc文件;
[0119]
第三确定模块,用于根据所述信号和所述dbc文件,确定所述信号的类型、最值和分辨率,其中所述类型包括离散型和连续型;
[0120]
第四确定模块,用于根据所述信号的类型、最值和分辨率确定所述待测试信号取值信息的预期取值信息;
[0121]
第二获取模块,用于根据所述信号的名称,从所述测试用例中获取所述信号的实际取值信息。
[0122]
具体地,所述第二确定模块32,包括:
[0123]
第七确定单元,用于根据所述预期取值信息和所述实际取值信息,确定所述目标测试项的信号取值的测试覆盖度,其中,所述测试覆盖度等于所述实际取值信息与所述预期取值信息的比值。
[0124]
具体地,所述第二确定模块32,还包括:
[0125]
第八确定单元,用于按照所述信号的编号顺序,依次确定所述目标测试项中的每一信号是否被所述实际测试项所覆盖的覆盖信息;
[0126]
第九确定单元,用于根据所述覆盖信息,确定所述目标测试项的信号的测试覆盖度。
[0127]
本发明实施例还提供一种设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的测试覆盖度确定
方法。其中,上述测试覆盖度确定方法的所述实现实施例均适用于该控制设备的实施例中,也能达到同样的技术效果。
[0128]
以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献