基于变异分析和覆盖准则的回归测试用例集缩减 -- 西北工业大学学报,2017,35(3):494-499
论文:2017,Vol:35,Issue(3):494-499
引用本文:
郑炜, 杨喜兵, 胡圣佑, 付荣亮, 李绍奇, 张帆. 基于变异分析和覆盖准则的回归测试用例集缩减[J]. 西北工业大学学报
Zheng Wei, Yang Xibing, Hu Shengyou, Fu Rongliang, Li Shaoqi, Zhang Fan. Regression Test Case Reduction Based on Mutation Analysis and Coverage Criterion[J]. Northwestern polytechnical university

基于变异分析和覆盖准则的回归测试用例集缩减
郑炜1, 杨喜兵1, 胡圣佑1, 付荣亮1, 李绍奇1, 张帆2
1. 西北工业大学 软件与微电子学院, 陕西 西安 710072;
2. 中国人民解放军 第五七一九工厂, 四川 彭州 611937
摘要:
软件测试是在软件开发过程中,用以确认和验证软件质量的主要方法。然而测试用例冗余是软件测试面临的一个重要难题。在回归测试中,人们会根据新的测试需求不断补充大量的测试用例,这也会造成测试用例冗余的出现。虽然现在已有很多工具通过重用测试用例集来降低回归测试的成本,但回归测试依然可能是极其耗时的过程。为此,人们提出了各种方法,对已生成的测试用例集进行缩减。虽然一些现有的数据缩减方法可以减少冗余数据,但往往会削弱排除错误的能力。文章通过引入变异分析和覆盖准则来建立回归测试用例集缩减实验的数学模型,并采用多目标进化优化方法来进行求解优化模型。最后采用Siemens suit基准数据集及工业space大程序进行验证,并使用3种进化优化算法进行测试用例集缩减。事实上,对于SIR小程序,NSGA-Ⅱ算法表现最优;对于space大程序,则是MOEA/D-PBI优于NSGA-Ⅱ。实验结果表明,在保证缺陷检测能力不下降的同时,该方法可以有效地缩减测试用例集。
关键词:    软件测试    测试用例集缩减    多目标进化优化   
Regression Test Case Reduction Based on Mutation Analysis and Coverage Criterion
Zheng Wei1, Yang Xibing1, Hu Shengyou1, Fu Rongliang1, Li Shaoqi1, Zhang Fan2
1. School of Software and Microelectronics, Northwestern Polytechnical University, Xi'an 710072, China;
2. The No. 5719 Factory of PLA, Pengzhou 611937, China
Abstract:
Software testing is one of the main verification and validation methods used in software development. Test case redundancy is a big challenge in software testing. Regression testing occurs whenever the system under test (SUT) or its environment changes, with the regression testing process involving the SUT being tested with the current test suite T or some subset of this (possibly with additional test cases for new code). Although there are many tools that reduce the cost of regression testing by re-applying the test suite T, regression testing can be a time consuming and expensive process. Some existing test case reduction methods can reduce the redundant cases, but tend to weaken defect detection ability. In view of this, the paper proposes a test case reduction method based on mutation analysis and coverage rule, which aims at reducing the redundant degree of test data and improving test efficiency without decreasing the defect detection ability and coverage of test data. We use six evolutionary multi-object optimization algorithms to minimize the test cases. These used three programs from the SIR repository and one larger program. In three SIR programs experiments NSGA-Ⅱ with tuning was the most effective technique. However, MOEA/D-PBI outperformed NSGA-Ⅱ on the larger program (Space). Experimental results prove that the method is indeed effective in reducing the test case redundancy.
Key words:    software testing    test suite minimization    multi-objective optimization   
收稿日期: 2017-03-01     修回日期:
DOI:
基金项目: 国家自然科学基金(61402370)与中央高校基本科研业务费专项资金资助
通讯作者:     Email:
作者简介: 郑炜(1975-),西北工业大学副教授,主要从事软件工程及软件测试的研究。
相关功能
PDF(1016KB) Free
打印本文
把本文推荐给朋友
作者相关文章
郑炜  在本刊中的所有文章
杨喜兵  在本刊中的所有文章
胡圣佑  在本刊中的所有文章
付荣亮  在本刊中的所有文章
李绍奇  在本刊中的所有文章
张帆  在本刊中的所有文章

参考文献:
[1] Elbaum S, Malishevsky A G, Rothermel G. Test Case Prioritization:a Family of Empirical Studies[J]. IEEE Trans on Software Engineering, 2002, 28(2):159-182
[2] Chen T Y, Lau M F. A New Heuristic for Test Suite Reduction[J]. Information & Software Technology, 1998, 40(5):347-354
[3] Lin J W, Huang C Y. Analysis of Test Suite Reduction with Enhanced Tie-Breaking Techniques[J]. Information & Software Technology, 2009, 51(4):679-690
[4] Orso A, Harrold M J, Rosenblum D, et al. Using Component Metacontent to Support the Regression Testing of Component-Based Software[J]. 2001:716-725
[5] Elbaum S G, Malishevsky A G, Rothermel G. Prioritizing Test Cases for Regression Testing[C]//Proceedings of the ACM/SIGSOFT International Symposium on Software Testing and Analysis, 2000:102-112
[6] Walcott K R, Soffa M L, Kapfhammer G M, et al. TimeAware Test Suite Prioritization[C]//ACM/SIGSOFT International Symposium on Software Testing and Analysis, 2010:849-853
[7] Li Z, Harman M, Hierons R M. Search Algorithms for Regression Test Case Prioritization[J]. IEEE Trans on Software Engineering, 2007, 33(4):225-237
[8] Yoo S, Harman M. Using Hybrid Algorithm for Pareto Efficient Multi-Objective Test Suite Minimisation[J]. Journal of Systems & Software, 2010, 83(4):689-701
[9] Hsu H Y,Orso A. MINTS;A Ueneral Framework and Tool for Supporting Test-Suite Minimization[C]//Proceedings of the International Conference on Software Engineering, 2009:419-429
[10] 陈锦富, 卢炎生, 谢晓东. 软件错误注入测试技术研究[J]. 软件学报, 2009, 20(6):1425-1443 Chen Jinfu, Lu Yansheng, Xie Xiaodong. Research on Software Fault Injection Testing[J]. Journal of Software, 2009, 20(6):1425-1443(in Chinese)
[11] Hierons R M, Li M, Liu X, et al. SIP:Optimal Product Selection from Feature Models Using Many-Objective Evolutionary Optimization[J]. ACM Trans on Software Engineering & Methodology, 2016, 25(2):17
[12] Brockhoff D, Friedrich T, Neumann F. Analyzing Hypervolume Indicator Based Algorithms[J]. Lecture Notes in Computer Science, 2008, 5199(2008):651-660