本申请涉及软件测试,具体而言,涉及一种测试用例优先级计算方法、系统、电子设备、介质。
背景技术:
1、随着当前软件系统的日益庞大,软件测试的重要性日益凸显。然而,目前软件行业更新迭代速度较快,发版周期较短,软件测试工作日益繁重。但与此同时,软件测试过程中依赖性较高的测试用例却没有在执行效率上有所提升。主要原因是,测试用例在生成过程中,用例的优先级一般由测试人员主观判断,缺少明确的优先级计算方法。另外一方面,测试用例由于缺少优先级,通常按照生成的顺序执行,导致用例执行过程中效率低下,缺陷发现速率不高。
2、因此,软件测试行业需要有规范化的用例优先级计算方法,以提高测试用例执行的效率。
技术实现思路
1、鉴于此,本发明提出了一种测试用例优先级计算方法、系统、电子设备、介质。
2、为实现上述技术目的,本发明的技术方案为:本发明实施例的第一方面提供了一种测试用例优先级计算方法,所述方法具体包括以下步骤:
3、步骤s1,计算测试用例覆盖度与测试用例关联性,以此获取第一轮测试的用例优先级;
4、步骤s2,按步骤s1获取的第一轮测试的用例优先级执行第一轮测试,记录测试用例的有效性和缺陷,再根据测试用例的缺陷检测能力确定第二轮测试的用例优先级;
5、步骤s3,按步骤s2得到的第二轮测试的用例优先级执行第二轮测试。
6、进一步地,所述步骤s1具体包括以下子步骤:
7、s101,计算测试用例覆盖度:根据测试用例覆盖的语句与软件迭代中新增、优化需求所涉及的所有语句之比,得到测试用例覆盖度;
8、s102,计算测试用例关联性:基于测试用例覆盖度,计算每条测试用例与其他所有测试用例之间的关联性,叠加得到每条测试用例的整体测试用例关联性;
9、s103,获取第一轮测试的用例优先级:将测试用例覆盖度和测试用例关联性加权相加,得到第一轮测试用例优先级。
10、进一步地,计算每条测试用例与其他所有测试用例之间的关联性,叠加得到每条测试用例的整体测试用例关联性的过程包括:
11、将第一测试用例覆盖的语句和第二测试用例覆盖的语句的交集,与第一测试用例覆盖的语句和第二测试用例覆盖的语句的并集之比作为第一测试用例与第二测试用例的关联性,以此类推得到第一测试用例的整体测试用例关联性,重复上述步骤,得到每条测试用例的整体测试用例关联性。
12、进一步地,记录测试用例的有效性和缺陷包括:
13、记录在执行测试用例过程中发现的缺陷,及缺陷与测试用例的对应关系,评估测试用例的有效性,并记录修改、剔除的测试用例。
14、进一步地,评估测试用例的有效性,并记录修改、剔除的测试用例的过程包括:
15、测试用例未失效,则测试用例无需修改;测试用例已失效,则测试用例需要剔除;测试用例部分有效,则测试用例需要根据测试场景和/或测试功能进行修改。
16、进一步地,所述测试用例的缺陷检测能力由执行测试用例发现缺陷的数量,缺陷修复的前后涉及的语句之比,缺陷修复后验证的次数决定。
17、进一步地,根据测试用例的缺陷检测能力确定第二轮测试的用例优先级包括:
18、对第一轮测试用例优先级、测试用例的有效性和测试用例的缺陷检测能力进行加权,以确定第二轮测试的用例优先级。
19、本发明实施例的第二方面提供了一种测试用例优先级计算系统,用于实现上述的测试用例优先级计算方法,所述系统包括:
20、第一轮测试的用例优先级确定单元,计算测试用例覆盖度与测试用例关联性,以此获取第一轮测试的用例优先级;
21、第一轮测试执行单元,按第一轮测试的用例优先级执行第一轮测试,记录测试用例的有效性和缺陷,再根据测试用例的缺陷检测能力确定第二轮测试的用例优先级;
22、第二轮测试执行单元,按第二轮测试的用例优先级执行第二轮测试。
23、本发明实施例的第三方面提供了一种电子设备,包括存储器和处理器,其特征在于,所述存储器与所述处理器耦接;其中,所述存储器用于存储程序数据,所述处理器用于执行所述程序数据以实现上述的测试用例优先级计算方法。
24、本发明实施例的第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现上述的测试用例优先级计算方法。
25、与现有技术相比,本发明的有益效果为:本发明提出了一种测试用例优先级计算方法,通过测试用例覆盖度、测试用例关联性确定第一轮测试中的用例优先级,在执行第一轮测试的过程中记录测试用例的有效性和缺陷,再根据测试用例的缺陷检测能力确定第二轮测试的用例优先级,最后进行第二轮测试。本发明通过对比默认排序的测试用例执行后缺陷发现速率apfd,与经过优先级计算并按照优先级排序执行用例的缺陷发现速率apfd,可以发现,经过优先级计算之后,按照计算结果排序执行的用例序列,本发明方法缺陷发现速率有明显提高。
1.一种测试用例优先级计算方法,其特征在于,所述方法具体包括以下步骤:
2.根据权利要求1所述的测试用例优先级计算方法,其特征在于,所述步骤s1具体包括以下子步骤:
3.根据权利要求2所述的测试用例优先级计算方法,其特征在于,计算每条测试用例与其他所有测试用例之间的关联性,叠加得到每条测试用例的整体测试用例关联性的过程包括:
4.根据权利要求1所述的测试用例优先级计算方法,其特征在于,记录测试用例的有效性和缺陷包括:
5.根据权利要求4所述的测试用例优先级计算方法,其特征在于,评估测试用例的有效性,并记录修改、剔除的测试用例的过程包括:
6.根据权利要求1所述的测试用例优先级计算方法,其特征在于,所述测试用例的缺陷检测能力由执行测试用例发现缺陷的数量,缺陷修复的前后涉及的语句之比,缺陷修复后验证的次数决定。
7.根据权利要求1所述的测试用例优先级计算方法,其特征在于,根据测试用例的缺陷检测能力确定第二轮测试的用例优先级包括:
8.一种测试用例优先级计算系统,用于实现权利要求1-7任一项所述的测试用例优先级计算方法,其特征在于,所述系统包括:
9.一种电子设备,包括存储器和处理器,其特征在于,所述存储器与所述处理器耦接;其中,所述存储器用于存储程序数据,所述处理器用于执行所述程序数据以实现上述权利要求1-7任一项所述的测试用例优先级计算方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-7中任一所述的测试用例优先级计算方法。