English
Related papers

Related papers: Does mutation testing improve testing practices?

200 papers

In this paper we apply mutation testing in an in-time fashion, i.e., across multiple project releases. Thus, we investigate how the mutants of the current version behave in the future versions of the programs. We study the characteristics…

Software Engineering · Computer Science 2025-01-06 Jeongju Sohn , Ezekiel Soremekun , Michail Papadakis

Large Language Models (LLMs) have shown remarkable capabilities in processing both natural and programming languages, which have enabled various applications in software engineering, such as requirement engineering, code generation, and…

Software Engineering · Computer Science 2024-01-12 Ziyu Li , Donghwan Shin

Code Large Language Models (CLLMs) have exhibited outstanding performance in program synthesis, attracting the focus of the research community. The evaluation of CLLM's program synthesis capability has generally relied on manually curated…

Software Engineering · Computer Science 2025-05-13 Longtian Wang , Tianlin Li , Xiaofei Xie , Yuhan Zhi , Jian Wang , Chao Shen

An "adequate" test suite should effectively find all inconsistencies between a system's requirements/specifications and its implementation. Practitioners frequently use code coverage to approximate adequacy, while academics argue that…

Software Engineering · Computer Science 2023-09-06 Kush Jain , Goutamkumar Tulajappa Kalburgi , Claire Le Goues , Alex Groce

Permutation testing in linear models, where the number of nuisance coefficients is smaller than the sample size, is a well-studied topic. The common approach of such tests is to permute residuals after regressing on the nuisance covariates.…

Methodology · Statistics 2020-10-09 Jesse Hemerik , Magne Thoresen , Livio Finos

It is natural to suppose that a Large Language Model is more likely to generate correct test cases when prompted with correct code under test, compared to incorrect code under test. However, the size of this effect has never been previously…

Software Engineering · Computer Science 2025-03-31 Dong Huang , Jie M. Zhang , Mark Harman , Mingzhe Du , Heming Cui

Context: In the realm of software development, maintaining high software quality is a persistent challenge. However, this challenge is often impeded by the lack of comprehensive understanding of how specific code modifications influence…

Software Engineering · Computer Science 2024-04-08 Thomas Karanikiotis , Andreas L. Symeonidis

Deep Learning (DL) components are routinely integrated into software systems that need to perform complex tasks such as image or natural language processing. The adequacy of the test data used to test such systems can be assessed by their…

Software Engineering · Computer Science 2021-09-17 Vincenzo Riccio , Nargiz Humbatova , Gunel Jahangirova , Paolo Tonella

We present a new method for model-based mutation-driven test case generation. Mutants are generated by making small syntactical modifications to the model or source code of the system under test. A test case kills a mutant if the behavior…

Logic in Computer Science · Computer Science 2019-07-18 Andreas Fellner , Mitra Tabaei Befrouei , Georg Weissenbacher

Diversity has been proposed as a key criterion to improve testing effectiveness and efficiency.It can be used to optimise large test repositories but also to visualise test maintenance issues and raise practitioners' awareness about waste…

Software Engineering · Computer Science 2020-10-20 Francisco Gomes de Oliveira Neto , Felix Dobslaw , Robert Feldt

Software product lines (SPL) are a method for the development of variant-rich software systems. Compared to non-variable systems, testing SPLs is extensive due to an increasingly amount of possible products. Different approaches exist for…

Software Engineering · Computer Science 2015-04-10 Hartmut Lackner , Martin Schmidt

Effective software testing is critical for producing reliable and secure software, yet many computer science students struggle to master the foundational concepts required to construct comprehensive test suites. While automated feedback…

Software Engineering · Computer Science 2025-10-02 Shiza Andleeb , Teo Mendoza , Lucas Cordova , Gursimran Walia , Jeffrey C. Carver

Deep learning (DL) defines a new data-driven programming paradigm where the internal system logic is largely shaped by the training data. The standard way of evaluating DL models is to examine their performance on a test dataset. The…

Software Engineering · Computer Science 2018-08-16 Lei Ma , Fuyuan Zhang , Jiyuan Sun , Minhui Xue , Bo Li , Felix Juefei-Xu , Chao Xie , Li Li , Yang Liu , Jianjun Zhao , Yadong Wang

Mutation testing consists of generating test cases that detect faults injected into software (generating mutants) which its original test suite could not. By running such an augmented set of test cases, it may discover actual faults that…

Software Engineering · Computer Science 2024-06-05 Jaekwon Lee , Enrico Viganò , Fabrizio Pastore , Lionel Briand

Modern programming languages (e.g., Java and C#) provide features to separate error-handling code from regular code, seeking to enhance software comprehensibility and maintainability. Nevertheless, the way exception handling (EH) code is…

Software Engineering · Computer Science 2021-05-04 Luan P. Lima , Lincoln S. Rocha , Carla I. M. Bezerra , Matheus Paixao

Software testing is a mandatory activity in any serious software development process, as bugs are a reality in software development. This raises the question of quality: good tests are effective in finding bugs, but until a test case…

Software Engineering · Computer Science 2023-07-14 Daniel Lucrédio , Auri Marcelo Rizzo Vincenzi , Eduardo Santana de Almeida , Iftekhar Ahmed

Mutant selection refers to the problem of choosing, among a large number of mutants, the (few) ones that should be used by the testers. In view of this, we investigate the problem of selecting the fault revealing mutants, i.e., the mutants…

Software Engineering · Computer Science 2018-11-06 Thierry Titcheu Chekam , Mike Papadakis , Tegawendé Bissyandé , Yves Le Traon , Koushik Sen

A natural method to evaluate the effectiveness of a testing technique is to measure the defect detection rate when applying the created test cases. Here, real or artificial software defects can be injected into the source code of software.…

Software Engineering · Computer Science 2020-01-28 Miroslav Bures , Pavel Herout , Bestoun S. Ahmed

Deep Learning (DL) frameworks are a fundamental component of DL development. Therefore, the detection of DL framework defects is important and challenging. As one of the most widely adopted DL testing techniques, model mutation has recently…

Software Engineering · Computer Science 2025-07-08 Yanzhou Mu , Rong Wang , Juan Zhai , Chunrong Fang , Xiang Chen , Zhiyuan Peng , Peiran Yang , Ruixiang Qian , Shaoyu Yang , Zhenyu Chen

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…

Software Engineering · Computer Science 2018-02-07 Michaël Marcozzi , Sébastien Bardin , Nikolai Kosmatov , Mike Papadakis , Virgile Prevosto , Loïc Correnson