JExample: Exploiting Dependencies Between Tests to Improve Defect Localization

Kuhn, Adrian; Rompaey, Bart Van; Haensenberger, Lea; Nierstrasz, Oscar; Demeyer, Serge; Gaelli, Markus; Leemput, Koenraad Van (2008). JExample: Exploiting Dependencies Between Tests to Improve Defect Localization. In: Abrahamsson, Pekka; Baskerville, Richard; Conboy, Kieran; Fitzgerald, Brian; Morgan, Lorraine; Wang, Xiaofeng (eds.) Agile Processes in Software Engineering and Extreme Programming. 9th International Conference, XP 2008, Limerick, Ireland, June 10-14, 2008. Proceedings. Lecture Notes in Business Information Processing: Vol. 9 (pp. 73-82). Heidelberg: Springer Verlag 10.1007/978-3-540-68255-4_8

Full text not available from this repository. (Request a copy)

To quickly localize defects, we want our attention to be focussed on relevant failing tests. We propose to improve defect localization by exploiting dependencies between tests, using a JUnit extension called JExample. In a case study, a monolithic white-box test suite for a complex algorithm is refactored into two traditional JUnit style tests and to JExample. Of the three refactorings, JExample reports five times fewer defect locations and slightly better performance (-8-12\%), while having similar maintenance characteristics. Compared to the original implementation, JExample greatly improves maintainability due the improved factorization following the accepted test quality guidelines. As such, JExample combines the benefits of test chains with test quality aspects of JUnit style testing.

Item Type: Book Section (Book Chapter)
Division/Institute: 08 Faculty of Science > Institute of Computer Science (INF)
UniBE Contributor: Kuhn, Adrian and Nierstrasz, Oscar Marius
Series: Lecture Notes in Business Information Processing
Publisher: Springer Verlag
Language: English
Submitter: Factscience Import
Date Deposited: 04 Oct 2013 15:22
Last Modified: 04 May 2014 23:27
Publisher DOI: 10.1007/978-3-540-68255-4_8
Web of Science ID: 000256667100008
URI: (FactScience: 206979)

Actions (login required)

Edit item Edit item
Provide Feedback