English
Related papers

Related papers: Automatic Test Improvement with DSpot: a Study wit…

200 papers

In computer science education, test cases are an integral part of programming assignments since they can be used as assessment items to test students' programming knowledge and provide personalized feedback on student-written code. The goal…

Computation and Language · Computer Science 2024-02-13 Nischal Ashok Kumar , Andrew Lan

This paper presents an approach to automating JUnit test generation for Java applications using the Spring Boot framework, leveraging the LLaMA (Large Language Model Architecture) model to enhance the efficiency and accuracy of the testing…

Software Engineering · Computer Science 2025-04-23 Daniele Gorla , Shivam Kumar , Pietro Nicolaus Roselli Lorenzini , Alireza Alipourfaz

Synchronizing production and test code, known as PT co-evolution, is critical for software quality in the software development lifecycle. Existing methods for automatic PT co-evolution either utilize predefined heuristic rules or rely on…

Software Engineering · Computer Science 2024-11-19 Jianlei Chi , Xiaotian Wang , Yuhan Huang , Lechen Yu , Di Cui , Jianguo Sun , Jun Sun

Test smells arise from poor design practices and insufficient domain knowledge, which can lower the quality of test code and make it harder to maintain and update. Manually refactoring test smells is time-consuming and error-prone,…

Software Engineering · Computer Science 2025-02-12 Yi Gao , Xing Hu , Xiaohu Yang , Xin Xia

Automated random testing has shown to be an effective approach to finding faults but still faces a major unsolved issue: how to generate test inputs diverse enough to find many faults and find them quickly. Stateful testing, the automated…

Software Engineering · Computer Science 2013-08-14 Yi Wei , Hannes Roth , Carlo A. Furia , Yu Pei , Alexander Horton , Michael Steindorfer , Martin Nordio , Bertrand Meyer

Developers often opt for easier but non-optimal implementation to meet deadlines or create rapid prototypes, leading to additional effort known as technical debt to improve the code later. Oftentimes, developers explicitly document the…

Software Engineering · Computer Science 2026-02-10 Ibuki Nakamura , Yutaro Kashiwa , Bin Lin , Hajimu Iida

Researchers and practitioners have designed and implemented various automated test case generators to support effective software testing. Such generators exist for various languages (e.g., Java, C#, or Python) and for various platforms…

The popularity of continuous integration (CI) is increasing as a result of market pressure to release product features or updates frequently. The ability of CI to deliver quality at speed depends on reliable test automation. In this paper,…

Software Engineering · Computer Science 2022-02-10 Yuqing Wang , Mika Mäntylä , Zihao Liu , Jouni Markkula

Defects4J is a large, peer-reviewed, structured dataset of real-world Java bugs. Each bug in Defects4J comes with a test suite and at least one failing test case that triggers the bug. In this paper, we report on an experiment to explore…

Software Engineering · Computer Science 2021-11-12 Matias Martinez , Thomas Durieux , Romain Sommerard , Jifeng Xuan , Martin Monperrus

Several recent advances in AI systems solve problems by providing a "scaffolding" program that structures multiple calls to language models (LMs) to generate better outputs. A scaffolding program is written in a programming language such as…

Computation and Language · Computer Science 2024-08-19 Eric Zelikman , Eliana Lorch , Lester Mackey , Adam Tauman Kalai

Unit tests play a key role in ensuring the correctness of software. However, manually creating unit tests is a laborious task, motivating the need for automation. Large Language Models (LLMs) have recently been applied to this problem,…

Software Engineering · Computer Science 2023-12-12 Max Schäfer , Sarah Nadi , Aryaz Eghbali , Frank Tip

Issue-reproducing tests fail on buggy code and pass once a patch is applied, thus increasing developers' confidence that the issue has been resolved and will not be re-introduced. However, past research has shown that developers often…

Software Engineering · Computer Science 2026-03-11 Konstantinos Kitsios , Marco Castelluccio , Alberto Bacchelli

Context: Developers design test suites to automatically verify that software meets its expected behaviors. Many dynamic analysis techniques are performed on the exploitation of execution traces from test cases. However, in practice, there…

Software Engineering · Computer Science 2015-06-08 Jifeng Xuan , Benoit Cornu , Matias Martinez , Benoit Baudry , Lionel Seinturier , Martin Monperrus

Competitive programming contests play a crucial role in cultivating computational thinking and algorithmic skills among learners. However, generating comprehensive test cases to effectively assess programming solutions remains…

Software Engineering · Computer Science 2025-09-30 Stefan Dascalescu , Adrian Marius Dumitran , Mihai Alexandru Vasiluta

Software projects capture information in various kinds of artifacts, including source code, tests, and documentation. Such artifacts routinely encode information that is redundant, i.e., when a specification encoded in the source code is…

Software Engineering · Computer Science 2020-05-22 Mathieu Nassif , Alexa Hernandez , Ashvitha Sridharan , Martin P. Robillard

A key aspect of ensuring the quality of a software system is the practice of unit testing. Through unit tests, developers verify the correctness of production source code, thereby verifying the system's intended behavior under test.…

Software Engineering · Computer Science 2021-03-18 Anthony Peruma , Christian D. Newman

Software is omnipresent within all factors of society. It is thus important to ensure that software are well tested to mitigate bad user experiences as well as the potential for severe financial and human losses. Software testing is however…

Software Engineering · Computer Science 2025-04-30 Jason Wang , Basem Suleiman , Muhammad Johan Alibasa

Embedded systems are ubiquitous and play critical roles in management systems for industry and transport. Software failures in these domains may lead to loss of production or even loss of life, so the software in these systems needs to be…

Software Engineering · Computer Science 2021-11-17 Per Erik Strandberg

Unit testing is an essential but resource-intensive step in software development, ensuring individual code units function correctly. This paper introduces AgoneTest, an automated evaluation framework for Large Language Model-generated (LLM)…

Software Engineering · Computer Science 2025-11-27 Andrea Lops , Fedelucio Narducci , Azzurra Ragone , Michelantonio Trizio , Claudio Bartolini

The use of new technologies in higher education has surprisingly emphasized students' tendency to adopt a passive behavior in class. Participation and interaction of students are essential to improve academic results. This paper describes…