A Fault based Approach to Test Case Prioritization

被引:8
作者
Farooq, Faiza [1 ]
Nadeem, Aamer [1 ]
机构
[1] Capital Univ Sci & Technol, Dept Comp Sci, Islamabad, Pakistan
来源
2017 INTERNATIONAL CONFERENCE ON FRONTIERS OF INFORMATION TECHNOLOGY (FIT) | 2017年
关键词
Regression testing; test case prioritization; mutation testing;
D O I
10.1109/FIT.2017.00017
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Regression testing is performed to ensure that the no new faults have been introduced in the software after modification and the software continues to work correctly. Regression testing is an expensive process because the test suite might be too large to execute in full. Thus to reduce the cost of such testing, regression testing techniques are used. One such technique is test case prioritization. Software testers assign priority to each test case to make sure that the test cases with higher priorities are executed first, in case of not having enough resources to execute the whole test suite. Test case prioritization is mainly used to increase fault detection rate of test suite which is the measure of how early faults are detected. In this paper, we propose an approach which exploits mutation testing in order to assign priorities to test cases. Using mutation testing, we introduce different faults in original program thus creating a number of mutated copies of the program and test case that exposes maximum number of these faults is given the highest priority. We report the outcomes of our experiments in which we applied our technique to test suites and calculated the fault detection rates produced by the prioritized test suites, comparing those rates of fault detection to the rates achieved by existing prioritization technique. The resulting data shows that prioritization technique proposed improved the fault detection rate of test suites.
引用
收藏
页码:52 / 57
页数:6
相关论文
共 17 条
[1]  
[Anonymous], 1979, Computers and Intractablity: A Guide to the Theory of NP-Completeness
[2]  
Burnstein Ilene., 2003, Practical Software Testing: A Process-Oriented Approach
[3]  
C Henard, 2016, P 38 INT C SOFTW ENG
[4]   Test case prioritization: A family of empirical studies [J].
Elbaum, S ;
Malishevsky, AG ;
Rothermel, G .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2002, 28 (02) :159-182
[5]  
Elbaum S., 2000, Software Engineering Notes, V25, P102, DOI 10.1145/347636.348910
[6]   Testing evolving software [J].
Harrold, MJ .
JOURNAL OF SYSTEMS AND SOFTWARE, 1999, 47 (2-3) :173-181
[7]   A history-based test prioritization technique for regression testing in resource constrained environments [J].
Kim, JM ;
Porter, A .
ICSE 2002: PROCEEDINGS OF THE 24TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 2002, :119-129
[8]  
Lou YL, 2015, 2015 IEEE 26TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE), P46, DOI 10.1109/ISSRE.2015.7381798
[9]   Using spanning sets for coverage testing [J].
Marré, M ;
Bertolino, A .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2003, 29 (11) :974-984
[10]  
Rothermel G., 1994, ICSE-16. 16th International Conference on Software Engineering (Cat. No.94CH3409-0), P201, DOI 10.1109/ICSE.1994.296779