Fuzzing for CPS Mutation Testing

08/15/2023
by   Jaekwon Lee, et al.
0

Mutation testing can help reduce the risks of releasing faulty software. For such reason, it is a desired practice for the development of embedded software running in safety-critical cyber-physical systems (CPS). Unfortunately, state-of-the-art test data generation techniques for mutation testing of C and C++ software, two typical languages for CPS software, rely on symbolic execution, whose limitations often prevent its application (e.g., it cannot test black-box components). We propose a mutation testing approach that leverages fuzz testing, which has proved effective with C and C++ software. Fuzz testing automatically generates diverse test inputs that exercise program branches in a varied number of ways and, therefore, exercise statements in different program states, thus maximizing the likelihood of killing mutants, our objective. We performed an empirical assessment of our approach with software components used in satellite systems currently in orbit. Our empirical evaluation shows that mutation testing based on fuzz testing kills a significantly higher proportion of live mutants than symbolic execution (i.e., up to an additional 47 percentage points). Further, when symbolic execution cannot be applied, fuzz testing provides significant benefits (i.e., up to 41 study is the first one comparing fuzz testing and symbolic execution for mutation testing; our results provide guidance towards the development of fuzz testing tools dedicated to mutation testing.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/31/2023

Property-Based Mutation Testing

Mutation testing is an established software quality assurance technique ...
research
03/12/2021

Sentinel: A Hyper-Heuristic for the Generation of Mutant Reduction Strategies

Mutation testing is an effective approach to evaluate and strengthen sof...
research
01/13/2021

Mutation Analysis for Cyber-Physical Systems: Scalable Solutions and Results in the Space Domain

On-board embedded software developed for spaceflight systems (space soft...
research
01/25/2022

Data-driven Mutation Analysis for Cyber-Physical Systems

Cyber-physical systems (CPSs) typically consist of a wide set of integra...
research
09/07/2018

Dynamic Mutant Subsumption Analysis using LittleDarwin

Many academic studies in the field of software testing rely on mutation ...
research
06/15/2023

MuRS: Mutant Ranking and Suppression using Identifier Templates

Diff-based mutation testing is a mutation testing approach that only mut...
research
01/28/2023

Assertion Inferring Mutants

Specification inference techniques aim at (automatically) inferring a se...

Please sign up or login with your details

Forgot password? Click here to reset