Higher accuracy and lower run time: efficient mutation analysis using non‐redundant mutation operators. (11th December 2014)
- Record Type:
- Journal Article
- Title:
- Higher accuracy and lower run time: efficient mutation analysis using non‐redundant mutation operators. (11th December 2014)
- Main Title:
- Higher accuracy and lower run time: efficient mutation analysis using non‐redundant mutation operators
- Authors:
- Just, René
Schweiggert, Franz - Other Names:
- Jia Yue guestEditor.
Merayo Mercedes guestEditor.
Harman Mark guestEditor. - Abstract:
- Summary: Mutation analysis is a powerful but computationally expensive method to measure the effectiveness of a testing or debugging technique. The high cost is due, in part, to redundant mutants generated by commonly used mutation operators. A mutant is said to be redundant if its outcome can be predicted based on the outcome of other mutants. The execution of those redundant mutants is unnecessary and wastes CPU resources. Moreover, the inclusion of redundant mutants may lead to a skewed mutant detection rate and therefore misrepresent the effectiveness of the assessed testing or debugging technique. This paper extends previous work and makes the following contributions. First, it defines and provides non‐redundant versions of the conditional operator replacement, unary operator insertion, and relational operator replacement mutation operators. Second, it reports on a conducted empirical study using 10 real‐world programmes that comprise a total of 410 000 lines of code. The empirical study used developer‐written and generated test suites. The results show how prevalent redundant mutants are and how their elimination improves the efficiency and accuracy of mutation analysis. In summary, the total mutation analysis run time decreased by more than 20% by removing redundant mutants, and the inclusion of redundant mutants led to an overestimated mutation score for all analysed test suites. Copyright © 2014 John Wiley & Sons, Ltd. Abstract : This paper studies redundancies inSummary: Mutation analysis is a powerful but computationally expensive method to measure the effectiveness of a testing or debugging technique. The high cost is due, in part, to redundant mutants generated by commonly used mutation operators. A mutant is said to be redundant if its outcome can be predicted based on the outcome of other mutants. The execution of those redundant mutants is unnecessary and wastes CPU resources. Moreover, the inclusion of redundant mutants may lead to a skewed mutant detection rate and therefore misrepresent the effectiveness of the assessed testing or debugging technique. This paper extends previous work and makes the following contributions. First, it defines and provides non‐redundant versions of the conditional operator replacement, unary operator insertion, and relational operator replacement mutation operators. Second, it reports on a conducted empirical study using 10 real‐world programmes that comprise a total of 410 000 lines of code. The empirical study used developer‐written and generated test suites. The results show how prevalent redundant mutants are and how their elimination improves the efficiency and accuracy of mutation analysis. In summary, the total mutation analysis run time decreased by more than 20% by removing redundant mutants, and the inclusion of redundant mutants led to an overestimated mutation score for all analysed test suites. Copyright © 2014 John Wiley & Sons, Ltd. Abstract : This paper studies redundancies in commonly used mutation operators and provides non‐redundant versions of the conditional operator replacement, unary operator insertion, and relational operator replacement mutation operators. The empirical study in this paper shows how the inclusion redundant mutants affect the efficiency and accuracy of mutation analysis. In summary, the total mutation analysis run time decreased by more than 20% by removing redundant mutants, and the inclusion of redundant mutants led to an overestimated mutation score for all analyzed test suites. … (more)
- Is Part Of:
- Software testing, verification & reliability. Volume 25:Number 5/7(2015)
- Journal:
- Software testing, verification & reliability
- Issue:
- Volume 25:Number 5/7(2015)
- Issue Display:
- Volume 25, Issue 5/7 (2015)
- Year:
- 2015
- Volume:
- 25
- Issue:
- 5/7
- Issue Sort Value:
- 2015-0025-NaN-0000
- Page Start:
- 490
- Page End:
- 507
- Publication Date:
- 2014-12-11
- Subjects:
- mutation analysis -- redundant mutants -- test adequacy -- code coverage
Computer software -- Testing -- Periodicals
Computer software -- Verification -- Periodicals
Computer software -- Reliability -- Periodicals
005.14 - Journal URLs:
- http://onlinelibrary.wiley.com/ ↗
- DOI:
- 10.1002/stvr.1561 ↗
- Languages:
- English
- ISSNs:
- 0960-0833
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - 8321.457500
British Library DSC - BLDSS-3PM
British Library STI - ELD Digital store - Ingest File:
- 7718.xml