DeepAI
Log In Sign Up

Freeing Testers from Polluting Test Objectives

08/29/2017
by   Michaël Marcozzi, et al.
0

Testing is the primary approach for detecting software defects. A major challenge faced by testers lies in crafting efficient test suites, able to detect a maximum number of bugs with manageable effort. To do so, they rely on coverage criteria, which define some precise test objectives to be covered. However, many common criteria specify a significant number of objectives that occur to be infeasible or redundant in practice, like covering dead code or semantically equal mutants. Such objectives are well-known to be harmful to the design of test suites, impacting both the efficiency and precision of testers' effort. This work introduces a sound and scalable formal technique able to prune out a significant part of the infeasible and redundant objectives produced by a large panel of white-box criteria. In a nutshell, we reduce this challenging problem to proving the validity of logical assertions in the code under test. This technique is implemented in a tool that relies on weakest-precondition calculus and SMT solving for proving the assertions. The tool is built on top of the Frama-C verification platform, which we carefully tune for our specific scalability needs. The experiments reveal that the tool can prune out up to 27 applications of 200K lines of code.

READ FULL TEXT

page 1

page 2

page 3

page 4

09/07/2018

Dynamic Mutant Subsumption Analysis using LittleDarwin

Many academic studies in the field of software testing rely on mutation ...
11/26/2022

An Efficient Black-Box Support of Advanced Coverage Criteria for Klee

Dynamic symbolic execution (DSE) is a powerful test generation approach ...
03/17/2018

Towards Efficient Data-flow Test Data Generation Using KLEE

Dataflow coverage, one of the white-box testing criteria, focuses on the...
08/29/2022

Confounder Selection: Objectives and Approaches

Confounder selection is perhaps the most important step in the design of...
10/06/2019

Automated Isolation for White-box Test Generation

Context. White-box test generation is a technique used for automatically...
07/19/2019

Elementary Interactions An Approach in Decision Tool Development

Multi-Criteria Decision Analysis (MCDA) is an established methodology to...