Publication | Closed Access
Efficient mutation analysis by propagating and partitioning infected execution states
87
Citations
30
References
2014
Year
Unknown Venue
EngineeringSoftware AnalysisFormal VerificationFuzzingCompilersRuntime VerificationTesting TechniqueComputer EngineeringInherent Scalability ProblemsEfficient Mutation AnalysisGenetic Improvement ProgrammingComputer ScienceMutation AnalysisBioinformaticsMutation-based TestingProgram AnalysisSoftware TestingComputational BiologyFormal MethodsParallel ProgrammingSystems BiologySymbolic Execution
Mutation analysis evaluates a testing technique by measur- ing how well it detects seeded faults (mutants). Mutation analysis is hampered by inherent scalability problems — a test suite is executed for each of a large number of mutants. Despite numerous optimizations presented in the literature, this scalability issue remains, and this is one of the reasons why mutation analysis is hardly used in practice. Whereas most previous optimizations attempted to stati- cally reduce the number of executions or their computational overhead, this paper exploits information available only at run time to further reduce the number of executions. First, state infection conditions can reveal — with a single test execution of the unmutated program — which mutants would lead to a different state, thus avoiding unnecessary test executions. Second, determining whether an infected execution state propagates can further reduce the number of executions. Mutants that are embedded in compound expressions may infect the state locally without affecting the outcome of the compound expression. Third, those mutants that do infect the state can be partitioned based on the resulting infected state — if two mutants lead to the same infected state, only one needs to be executed as the result of the other can be inferred. We have implemented these optimizations in the Major mu- tation framework and empirically evaluated them on 14 open source programs. The optimizations reduced the mutation analysis time by 40% on average.
| Year | Citations | |
|---|---|---|
Page 1
Page 1