Automatic Test Improvement with DSpot: a Study with Ten Mature Open-Source Projects

Benjamin Danglot 1 Oscar Vera-Pérez 2 Benoit Baudry 3 Martin Monperrus 1
1 SPIRALS - Self-adaptation for distributed services and large software systems
Inria Lille - Nord Europe, CRIStAL - Centre de Recherche en Informatique, Signal et Automatique de Lille (CRIStAL) - UMR 9189
2 DiverSe - Diversity-centric Software Engineering
Inria Rennes – Bretagne Atlantique , IRISA-D4 - LANGAGE ET GÉNIE LOGICIEL
Abstract : In the literature, there is a rather clear segregation between manually written tests by developers and automatically generated ones. In this paper, we explore a third solution: to automatically improve existing test cases written by developers. We present the concept, design and implementation of a system called DSpot, that takes developer-written test cases as input (JUnit tests in Java) and synthesizes improved versions of them as output. Those test improvements are given back to developers as patches or pull requests, that can be directly integrated in the main branch of the test code base. We have evaluated DSpot in a deep, systematic manner over 40 real-world unit test classes from 10 notable and open-source software projects. We have amplified all test methods from those 40 unit test classes. In 26/40 cases, DSpot is able to
Document type :
Journal articles
Complete list of metadatas

Cited literature [33 references]  Display  Hide  Download

https://hal.inria.fr/hal-01923575
Contributor : Benjamin Danglot <>
Submitted on : Thursday, November 15, 2018 - 12:51:08 PM
Last modification on : Friday, September 13, 2019 - 9:48:41 AM

File

_EmSE18__Automatic_Test_Improv...
Files produced by the author(s)

Identifiers

Citation

Benjamin Danglot, Oscar Vera-Pérez, Benoit Baudry, Martin Monperrus. Automatic Test Improvement with DSpot: a Study with Ten Mature Open-Source Projects. Empirical Software Engineering, Springer Verlag, 2019, pp.1-35. ⟨10.1007/s10664-019-09692-y⟩. ⟨hal-01923575⟩

Share

Metrics

Record views

596

Files downloads

603