Back to overview

Testability First!

Type of publication Peer-reviewed
Publikationsform Proceedings (peer-reviewed)
Author Ghafari M., Eggiman M., Nierstrasz O.,
Project Agile Software Assistance
Show all

Proceedings (peer-reviewed)

Page(s) 1 - 6
Title of proceedings 2019 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)
DOI 10.1109/esem.2019.8870170

Open Access

Type of Open Access Repository (Green Open Access)


Background: The pivotal role of testing in high-quality software production has driven a significant effort in evaluating and assessing testing practices. Aims: We explore the state of testing in a large industrial project over an extended period. Method: We study the interplay between bugs in the project and its test cases, and interview developers and stakeholders to uncover reasons underpinning our observations. Results: We realized that testing is not well adopted, and that testability(i.e., ease of testing) is low. We found that developers tended to abandon writing tests when they assessed the effort to be high. Frequent changes in requirements and pressure to add new features also hindered developers from writing tests. Conclusions: Regardless of the debates on test first or later, we hypothesize that the underlying reasons for poor test quality are rooted in a lack of attention to testing early in the development of a software component, leading to poor testability of the component. However, testability is usually overlooked in research that studies the impact of testing practices, and should be explicitly taken into account.