Measuring Coverage of Prolog Programs Using Mutation Testing

08/23/2018
by   Alexandros Efremidis, et al.
0

Testing is an important aspect in professional software development, both to avoid and identify bugs as well as to increase maintainability. However, increasing the number of tests beyond a reasonable amount hinders development progress. To decide on the completeness of a test suite, many approaches to assert test coverage have been suggested. Yet, frameworks for logic programs remain scarce. In this paper, we introduce a framework for Prolog programs measuring test coverage using mutations. We elaborate the main ideas of mutation testing and transfer them to logic programs. To do so, we discuss the usefulness of different mutations in the context of Prolog and empirically evaluate them in a new mutation testing framework on different examples.

READ FULL TEXT
research
08/19/2022

Testing Quantum Programs with Multiple Subroutines

Errors in quantum programs are challenging to track down due to the unce...
research
02/22/2021

Practical Mutation Testing at Scale

Mutation analysis assesses a test suite's adequacy by measuring its abil...
research
04/23/2021

Comparing Mutation Coverage Against Branch Coverage in an Industrial Setting

The state-of-the-practice in software development is driven by constant ...
research
11/07/2022

SLOPT: Bandit Optimization Framework for Mutation-Based Fuzzing

Mutation-based fuzzing has become one of the most common vulnerability d...
research
12/06/2022

How to Compare Fuzzers

Fuzzing is a key method to discover vulnerabilities in programs. Despite...
research
09/05/2023

Mind the Gap: The Difference Between Coverage and Mutation Score Can Guide Testing Efforts

An "adequate" test suite should effectively find all inconsistencies bet...
research
08/05/2021

TRANSMUT-SPARK: Transformation Mutation for Apache Spark

We propose TRANSMUT-Spark, a tool that automates the mutation testing pr...

Please sign up or login with your details

Forgot password? Click here to reset