【技术实现步骤摘要】
软件的组合测试用例优化方法和装置
[0001]本专利技术涉及软件测试
,特别涉及一种软件的组合测试用例优化方法和装置。
技术介绍
[0002]随着科学技术水平不断提高和混合学科的迅速发展,现代软件系统特别是工业仿真软件需要实现的功能越来越来复杂。因此,对软件系统进行测试以保证其正常运行并提高软件质量尤为重要。测试用例是对系统进行软件测试的关键步骤之一,生成高质量、精炼的测试用例,可以提高对数值模拟软件的测试效果,同时还能够显著减少软件测试的时间和成本。组合测试可以在庞大复杂参数组合空间中选取尽可能少的测试用例测试各种情形,从而能够科学系统有效地检测出复杂软件中各类组合情形引发的故障,是当前软件测试中的一个重要实现途径。
[0003]然而,目前现有的测试用例生成工具或方法难以做到对不同参数系统均生成最简单化的两两组合参数测试用例集。比如,很多测试用例集是通过人工经验得到的,冗余度较高,导致测试人员需要进一步优化已生成的组合测试用例,以减少软件测试的时间和成本。而且在对测试用例进行进一步优化的过程中,算法或工具设计 ...
【技术保护点】
【技术特征摘要】
1.一种软件的组合测试用例优化方法,其特征在于,包括:确定一个待优化的测试用例集;其中,该测试用例集中包括至少两个用于对软件进行测试的测试用例,且每一个测试用例中均包括至少两个测试参数;对所述测试用例集中各测试用例的参数组合的有效性进行标记,分别得到有效参数标记矩阵和经过有效参数标记后的次级测试用例集;其中,所述有效参数标记矩阵中每个元素所处的位置对应一种参数组合,且每个元素的取值用于表征对应参数组合是否为有效参数组合,每一种参数组合均由测试用例中的其中两个测试参数所确定;针对所述次级测试用例集中的每一个测试用例,根据所述有效参数标记矩阵对所述次级测试用例集中的冗余信息进行筛减;根据筛减后得到的各个测试用例,确定优化后的测试用例集。2.根据权利要求1所述的软件的组合测试用例优化方法,其特征在于,所述确定一个待优化的测试用例集,包括:获取N个对软件进行测试的测试用例数组;其中,每个测试用例数组中包含M个参数,N和M均≥2;将获取的N个测试用例数组进行组合,得到大小为N
×
M的待优化测试用例集矩阵。3.根据权利要求1所述的软件的组合测试用例优化方法,其特征在于,所述对所述测试用例集中各测试用例的参数组合的有效性进行标记,分别得到有效参数标记矩阵和经过有效参数标记后的次级测试用例集,包括:确定一个组合覆盖矩阵;其中,该组合覆盖矩阵能够覆盖所述测试用例集中的所有测试用例的参数组合,且该组合覆盖矩阵中每一个元素所处的位置对应一种参数组合,元素值表征对应的参数组合是否被覆盖;根据各测试用例的参数组合在所述组合覆盖矩阵中所对应的元素值对各测试用例的参数组合进行标记,并分别确定所述有效参数标记矩阵和所述次级测试用例集。4.根据权利要求3所述的软件的组合测试用例优化方法,其特征在于,所述根据各测试用例的参数组合在所述组合覆盖矩阵中所对应的元素值对各测试用例的参数组合进行标记,确定所述有效参数标记矩阵的步骤,包括:依次针对每一个测试用例执行:生成一个有效组合记录数组;其中,该有效组合记录数组包括C
2M
个元素,每一个元素所处的位置均对应一种参数组合,且所有元素值均为表征参数组合无效的第一无效值,M用于表征当前测试用例的测试参数个数;依次查看当前测试用例的各参数组合在所述组合覆盖矩阵中是否被覆盖过;若有参数组合未被覆盖过,则在所述有效组合记录数组中将该未被覆盖过的参数组合所对应的元素值更改为表征参数组合有效的第一有效值,以及,在所述组合覆盖矩阵中将所述未被覆盖过的参数组合所对应的元素值更改为第二有效值;其中,初始生成的所述组合覆盖矩阵中元素值均为表征参数组合未被覆盖的第二无效值,所述第二有效值表征对应参数组合被覆盖;将针对当前测试用例执行后得到的组合覆盖矩阵作为下一个测试用例执行时的组合覆盖矩阵;将针对各个测试用例得到的有效组合记录数组进行合并,得到所述有效参数标记矩
阵。5.根据权利要求4所述的软件的组合测试用例优化方法,其特征在于,在对所述测试用例集中各测试用例的参数组合的有效性进行标记之前,进一步包括:生成一个有效组合数矩阵;其中,该有效组合数矩阵的大小与所述测试用例集所对应的矩阵大小相同,且元素值均为0;在每次查看当前测试用例的各参数组合在所述组合覆盖矩阵中是否被覆盖过之后,进一步包括:若未被覆盖过,则将所述有效组合数矩阵中的第一目标元素的元素...
【专利技术属性】
技术研发人员:张晓蓉,孙岩,谭丽红,潘娅,田永强,陈元松,江涛,吴亚东,
申请(专利权)人:西南科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。