English
Related papers

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

200 papers

Context. Detecting Self-Admitted Technical Debt (SATD) is crucial for proactive software maintenance. Previous research has primarily targeted detecting and prioritizing SATD, with little focus on the source code afflicted with SATD. Our…

Software Engineering · Computer Science 2025-11-04 Murali Sridharan , Mikel Robredo , Leevi Rantala , Matteo Esposito , Valentina Lenarduzzi , Mika Mantyla

During last years, researches have proposed novel repair approaches that automatically generate patches for repairing software bugs. Repair approaches can be loosely characterized along the main design philosophy such generate- and-validate…

Software Engineering · Computer Science 2019-02-13 Matias Martinez , Martin Monperrus

Developers use logging statements to track software runtime behaviors and system status. Yet, unclear or misleading logs can hide true execution patterns and hinder software maintenance. Current research on logging statement issues is…

Software Engineering · Computer Science 2025-04-23 Renyi Zhong , Yichen Li , Jinxi Kuang , Wenwei Gu , Yintong Huo , Michael R. Lyu

Automated program repair is an emerging technology that seeks to automatically rectify bugs and vulnerabilities using learning, search, and semantic analysis. Trust in automatically generated patches is necessary for achieving greater…

Software Engineering · Computer Science 2022-02-14 Yannic Noller , Ridwan Shariffdeen , Xiang Gao , Abhik Roychoudhury

Regression testing is crucial in ensuring that pure code refactoring does not adversely affect existing software functionality, but it can be expensive, accounting for half the cost of software maintenance. Automated test case generation…

Software Engineering · Computer Science 2024-01-05 Alejandra Duque-Torres , Claus Klammer , Dietmar Pfahl , Stefan Fischer , Rudolf Ramler

Agent-based coding tools have transformed software development practices. Unlike prompt-based approaches that require developers to manually integrate generated code, these agent-based tools autonomously interact with repositories to…

Software Engineering · Computer Science 2026-03-17 Suzuka Yoshimoto , Shun Fujita , Kosei Horikawa , Daniel Feitosa , Yutaro Kashiwa , Hajimu Iida

A few works address the challenge of automating software diversification, and they all share one core idea: using automated test suites to drive diversification. However, there is is lack of solid understanding of how test suites, programs…

Software Engineering · Computer Science 2018-12-27 Benoit Baudry , Simon Allier , Marcelino Rodriguez-Cancio , Martin Monperrus

Mobile applications, often simply called "apps", are increasingly widespread, and we use them daily to perform a number of activities. Like all software, apps must be adequately tested to gain confidence that they behave correctly.…

Software Engineering · Computer Science 2015-04-01 Shauvik Roy Choudhary , Alessandra Gorla , Alessandro Orso

To ensure the quality of a software system, developers perform an activity known as unit testing, where they write code (known as test cases) that verifies the individual software units that make up the system. Like production code, test…

Software Engineering · Computer Science 2023-03-09 Wajdi Aljedaani , Mohamed Wiem Mkaouer , Anthony Peruma , Stephanie Ludi

Software developers often reuse code from online sources such as Stack Overflow within their projects. However, the process of searching for code snippets and integrating them within existing source code can be tedious. In order to improve…

Software Engineering · Computer Science 2021-01-05 Brittany Reid , Christoph Treude , Markus Wagner

In industry, software testing is the primary method to verify and validate the functionality, performance, security, usability, and so on, of software-based systems. Test automation has gained increasing attention in industry over the last…

Software Engineering · Computer Science 2025-09-03 Ina K. Schieferdecker

Developers create software branches for tentative feature addition and bug fixing, and periodically merge branches to release software with new features or repairing patches. When the program edits from different branches textually overlap…

Software Engineering · Computer Science 2021-03-04 Bowen Shen , Cihan Xiao , Na Meng , Fei He

Nowadays, software testing professionals are commonly required to develop coding skills to work on test automation. One essential skill required from those who code is the ability to implement code refactoring, a valued quality aspect of…

Various proxy metrics for test quality have been defined in order to guide developers when writing tests. Code coverage is particularly well established in practice, even though the question of how coverage relates to test quality is a…

Software Engineering · Computer Science 2021-03-15 Goran Petrović , Marko Ivanković , Gordon Fraser , René Just

Automated Program Repair (APR) improves developer productivity by saving debugging and bug-fixing time. While APR has been extensively explored for C/C++ and Java programs, there is little research on bugs in PHP programs due to the lack of…

Software Engineering · Computer Science 2024-01-23 K. D. Pramod , W. T. N. De Silva , W. U. K. Thabrew , Ridwan Shariffdeen , Sandareka Wickramanayake

Finding and fixing bugs are time-consuming activities in software development. Spectrum-based fault localization aims to identify the faulty position in source code based on the execution trace of test cases. Failing test cases and their…

Software Engineering · Computer Science 2018-07-06 Jifeng Xuan , Martin Monperrus

Context. Refactoring has been widely investigated in the past in relation to production code quality, yet still little is known on how developers apply refactoring on test code. Specifically, there is still a lack of investigation into how…

Software Engineering · Computer Science 2023-08-21 Luana Martins , Valeria Pontillo , Heitor Costa , Filomena Ferrucci , Fabio Palomba , Ivan Machado

Various mature automated test generation tools exist for statically typed programming languages such as Java. Automatically generating unit tests for dynamically typed programming languages such as Python, however, is substantially more…

Software Engineering · Computer Science 2022-07-19 Stephan Lukasczyk , Florian Kroiß , Gordon Fraser

Automatic assessment of code, in particular to support education, is an important feature included in several Learning Management Systems (LMS), at least to some extent. Several kinds of assessments can be designed, such as exercises asking…

Software Engineering · Computer Science 2019-11-28 Sébastien Combéfis , Guillaume de Moffarts

Large language models are redefining software engineering by implementing AI-powered techniques throughout the whole software development process, including requirement gathering, software architecture, code generation, testing, and…

Software Engineering · Computer Science 2024-06-11 Malik Abdul Sami , Muhammad Waseem , Zeeshan Rasheed , Mika Saari , Kari Systä , Pekka Abrahamsson