English
Related papers

Related papers: Does mutation testing improve testing practices?

200 papers

The pivotal role of testing in high-quality software production has driven a significant effort in evaluating and assessing testing practices. We explore the state of testing in a large industrial project over an extended period. We study…

Software Engineering · Computer Science 2019-08-06 Mohammad Ghafari , Markus Eggiman , Oscar Nierstrasz

In verification-aware languages, such as Dafny, despite their critical role, specifications are as prone to error as implementations. Flaws in specifications can result in formally verified programs that deviate from the intended behavior.…

Software Engineering · Computer Science 2026-04-14 Isabel Amaral , Alexandra Mendes , José Campos

Mutation testing may be used to guide test case generation and as a technique to assess the quality of test suites. Despite being used frequently, mutation testing is not so commonly applied in the mobile world. One critical challenge in…

One of the critical phases in software development is software testing. Testing helps with identifying potential bugs and reducing maintenance costs. The goal of automated test generation tools is to ease the development of tests by…

Software Engineering · Computer Science 2023-09-01 Arghavan Moradi Dakhel , Amin Nikanjam , Vahid Majdinasab , Foutse Khomh , Michel C. Desmarais

Metamorphic testing is a widely used methodology that examines an expected relation between pairs of executions to automatically find bugs, such as correctness bugs. We found that code coverage cannot accurately measure the extent to which…

Software Engineering · Computer Science 2025-08-25 Jinsheng Ba , Yuancheng Jiang , Manuel Rigger

Mutation testing is a means to assess the effectiveness of a test suite and its outcome is considered more meaningful than code coverage metrics. However, despite several optimizations, mutation testing requires a significant computational…

Software Engineering · Computer Science 2019-03-14 Rainer Niedermayr , Stefan Wagner

Industrial robotic systems (IRS) are increasingly deployed in diverse environments, where failures can result in severe accidents and costly downtime. Ensuring the reliability of the software controlling these systems is therefore critical.…

Robotics · Computer Science 2025-11-19 Marcela Gonçalves dos Santos , Sylvain Hallé , Fábio Petrillo

Context: Students often misunderstand programming problem descriptions. This can lead them to solve the wrong problem, which creates frustration, obstructs learning, and imperils grades. Researchers have found that students can be made to…

Software Engineering · Computer Science 2024-01-02 Siddhartha Prasad , Ben Greenman , Tim Nelson , Shriram Krishnamurthi

Mutation testing is the state-of-the-art technique for assessing the fault detection capacity of a test suite. Unfortunately, a full mutation analysis is often prohibitively expensive. The CppCheck project for instance, demands a build time…

Software Engineering · Computer Science 2022-11-01 Sten Vercammen , Serge Demeyer , Markus Borg , Niklas Pettersson , Görel Hedin

Mutation testing is an established software quality assurance technique for the assessment of test suites. While it is well-suited to estimate the general fault-revealing capability of a test suite, it is not practical and informative when…

Software Engineering · Computer Science 2023-02-01 Ezio Bartocci , Leonardo Mariani , Dejan Nickovic , Drishti Yadav

Large Language Models (LLMs) have recently been used to generate mutants in both research work and in industrial practice. However, there has been no comprehensive empirical study of their performance for this increasingly important…

Software Engineering · Computer Science 2026-01-23 Bo Wang , Mingda Chen , Ming Deng , Youfang Lin , Mark Harman , Mike Papadakis , Jie M. Zhang

Test Case Prioritization (TCP) is an important component of regression testing, allowing for earlier detection of faults or helping to reduce testing time and cost. While several TCP approaches exist in the research literature, a growing…

Software Engineering · Computer Science 2018-09-20 Qi Luo , Kevin Moran , Denys Poshyvanyk , Massimiliano Di Penta

Mutation testing has shown great promise in assessing the effectiveness of test suites while exhibiting additional applications to test-case generation, selection, and prioritization. Traditional mutation testing typically utilizes a set of…

Background: Test flakiness is identified as a major issue that compromises the regression testing process of complex software systems. Flaky tests manifest non-deterministic behaviour, send confusing signals to developers, and break their…

Software Engineering · Computer Science 2021-04-16 Sarra Habchi , Maxime Cordy , Mike Papadakis , Yves Le Traon

The competent programmer hypothesis states that most programmers are competent enough to create correct or almost correct source code. Because this implies that bugs should usually manifest through small variations of the correct code, the…

Software Engineering · Computer Science 2023-05-17 Zaheed Ahmed , Eike Stein , Steffen Herbold , Fabian Trautsch , Jens Grabowski

Estimating software testability can crucially assist software managers to optimize test budgets and software quality. In this paper, we propose a new approach that radically differs from the traditional approach of pursuing testability…

Software Engineering · Computer Science 2023-08-01 Luca Guglielmo , Leonardo Mariani , Giovanni Denaro

Fuzzing is one of the fastest growing fields in software testing. The idea behind fuzzing is to check the behavior of software against a large number of randomly generated inputs, trying to cover all interesting parts of the input space,…

Software Engineering · Computer Science 2022-02-15 Rahul Gopinath , Philipp Görz , Alex Groce

Unit testing has been considered as having a key role in building high quality software, and therefore it has been widely used in practice. However, data on the relationship between unit testing and aspects of software quality remain…

Software Engineering · Computer Science 2019-04-10 Lucas Gren , Vard Antinyan

Coding agents have received significant adoption in software development recently. Unlike traditional LLM-based code completion tools, coding agents work with autonomy (e.g., invoking external tools) and leave visible traces in software…

Software Engineering · Computer Science 2026-02-03 Andre Hora , Romain Robbes

Evaluating Software testability can assist software managers in optimizing testing budgets and identifying opportunities for refactoring. In this paper, we abandon the traditional approach of pursuing testability measurements based on the…

Software Engineering · Computer Science 2021-02-23 Luca Guglielmo , Andrea Riboni , Giovanni Denaro