DEMINER: test generation for high test coverage through mutant exploration. (28th October 2019)
- Record Type:
- Journal Article
- Title:
- DEMINER: test generation for high test coverage through mutant exploration. (28th October 2019)
- Main Title:
- DEMINER: test generation for high test coverage through mutant exploration
- Authors:
- Kim, Yunho
Hong, Shin - Other Names:
- Feldt Robert guestEditor.
Yoo Shin guestEditor. - Abstract:
- Summary: Most software testing techniques test a target program as it is and fail to utilize valuable information of diverse test executions on many variants/mutants of the original program in test generation. This paper proposes a new test generation technique DEMINER, which utilizes mutant executions to guide test generation on the original program for high test coverage. DEMINER first generates various mutants of an original target program and then extracts runtime information of mutant executions, which covered unreached branches by the mutation effects. Using the obtained runtime information, DEMINER inserts guideposts, artificial branches to replay the observed mutation effects, to the original target programs. Finally, DEMINER runs automated test generation on the original program with guideposts and achieves higher test coverage. We implemented DEMINER for C programs through software mutation and guided test generation such as concolic testing and fuzzing. We have shown the effectiveness of DEMINER on six real‐world target programs: Busybox‐ls, Busybox‐printf, Coreutils‐sort, GNU‐find, GNU‐grep and GNU‐sed . The experiment results show that DEMINER improved branch coverage by 63.4% and 19.6% compared with those of the conventional concolic testing techniques and the conventional fuzzing techniques on average, respectively. Abstract : This paper proposes DEMINER, a new test generation technique that utilizes mutant executions to guide test generation for high testSummary: Most software testing techniques test a target program as it is and fail to utilize valuable information of diverse test executions on many variants/mutants of the original program in test generation. This paper proposes a new test generation technique DEMINER, which utilizes mutant executions to guide test generation on the original program for high test coverage. DEMINER first generates various mutants of an original target program and then extracts runtime information of mutant executions, which covered unreached branches by the mutation effects. Using the obtained runtime information, DEMINER inserts guideposts, artificial branches to replay the observed mutation effects, to the original target programs. Finally, DEMINER runs automated test generation on the original program with guideposts and achieves higher test coverage. We implemented DEMINER for C programs through software mutation and guided test generation such as concolic testing and fuzzing. We have shown the effectiveness of DEMINER on six real‐world target programs: Busybox‐ls, Busybox‐printf, Coreutils‐sort, GNU‐find, GNU‐grep and GNU‐sed . The experiment results show that DEMINER improved branch coverage by 63.4% and 19.6% compared with those of the conventional concolic testing techniques and the conventional fuzzing techniques on average, respectively. Abstract : This paper proposes DEMINER, a new test generation technique that utilizes mutant executions to guide test generation for high test coverage. DEMINER first explores new behaviors of a target program by changing the program structure (i.e., by mutation), extracting path conditions under which new branches are achieved, as guideposts, and then feeding guideposts to test generation to lead path exploration to achieve high test coverage. The experimental results show that DEMINER improves branch‐coverage by up to 63.4\% than do the existing test generation techniques. … (more)
- Is Part Of:
- Software testing, verification & reliability. Volume 31:Number 1/2(2021)
- Journal:
- Software testing, verification & reliability
- Issue:
- Volume 31:Number 1/2(2021)
- Issue Display:
- Volume 31, Issue 1/2 (2021)
- Year:
- 2021
- Volume:
- 31
- Issue:
- 1/2
- Issue Sort Value:
- 2021-0031-NaN-0000
- Page Start:
- n/a
- Page End:
- n/a
- Publication Date:
- 2019-10-28
- Subjects:
- automated test generation -- concolic testing -- fuzzing -- mutation analysis -- test 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.1715 ↗
- 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:
- 16876.xml