Suggestions on Test Suite Improvements with Automatic Infection and Propagation Analysis
Oscar Luis Vera-P\'erez, Benjamin Danglot, Martin Monperrus, Benoit, Baudry

TL;DR
This paper introduces Reneri, a tool that analyzes test suites to identify reasons for undetected code transformations, and suggests targeted improvements to enhance test effectiveness.
Contribution
The work presents a novel technique and tool for automatically diagnosing and suggesting improvements for test suites to detect code transformations.
Findings
63% of undetected transformations are due to weak oracles
Reneri successfully generates suggestions for all undetected cases
Existing test generation tools cannot fix all undetected transformations
Abstract
An extreme transformation removes the body of a method that is reached by one test case at least. If the test suite passes on the original program and still passes after the extreme transformation, the transformation is said to be undetected, and the test suite needs to be improved. In this work we propose a technique to automatically determine which of the following three reasons prevent the detection of the extreme transformation is : the test inputs are not sufficient to infect the state of the program; the infection does not propagate to the test cases; the test cases have a weak oracle that does not observe the infection. We have developed Reneri, a tool that observes the program under test and the test suite in order to determine runtime differences between test runs on the original and the transformed method. The observations gathered during the analysis are processed by Reneri…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Advanced Malware Detection Techniques · VLSI and Analog Circuit Testing
