Not logged in.

Contribution Details

Type Conference or Workshop Paper
Scope Discipline-based scholarship
Published in Proceedings Yes
Title Test-Driven Code Review: An Empirical Study
Organization Unit
Authors
  • Davide Spadini
  • Fabio Palomba
  • Tobias Baum
  • Stefan Hanenberg
  • Magiel Bruntink
  • Alberto Bacchelli
Presentation Type paper
Item Subtype Original Work
Refereed Yes
Status Published in final form
Language
  • English
ISBN 978-1-7281-0869-8
Page Range 1061 - 1072
Event Title 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE)
Event Type conference
Event Location Montreal, QC, Canada
Event Start Date June 25 - 2019
Event End Date July 1 - 2019
Place of Publication USA
Publisher IEEE
Abstract Text Test-Driven Code Review (TDR) is a code review practice in which a reviewer inspects a patch by examining the changed test code before the changed production code. Although this practice has been mentioned positively by practitioners in informal literature and interviews, there is no systematic knowledge of its effects, prevalence, problems, and advantages. In this paper, we aim at empirically understanding whether this practice has an effect on code review effectiveness and how developers' perceive TDR. We conduct (i) a controlled experiment with 93 developers that perform more than 150 reviews, and (ii) 9 semi-structured interviews and a survey with 103 respondents to gather information on how TDR is perceived. Key results from the experiment show that developers adopting TDR find the same proportion of defects in production code, but more in test code, at the expenses of fewer maintainability issues in production code. Furthermore, we found that most developers prefer to review production code as they deem it more critical and tests should follow from it. Moreover, general poor test code quality and no tool support hinder the adoption of TDR. Public preprint: [https: //doi.org/10.5281/zenodo.2551217], data and materials: [https:// doi.org/10.5281/zenodo.2553139].
Digital Object Identifier 10.1109/ICSE.2019.00110
Other Identification Number merlin-id:20220
PDF File Download from ZORA
Export BibTeX
EP3 XML (ZORA)