Developer Testing in The IDE: Patterns, Beliefs, And Behavior

Moritz Beller, Georgios Gousios, Annibale Panichella, Sebastian Proksch, Sven Amann, Andy Zaidman

Research output: Contribution to journalArticleScientificpeer-review

47 Citations (Scopus)
321 Downloads (Pure)

Abstract

Software testing is one of the key activities to achieve software quality in practice. Despite its importance, however, we have a remarkable lack of knowledge on how developers test in real-world projects. In this paper, we report on a large-scale field study with 2,443 software engineers whose development activities we closely monitored over 2.5 years in four integrated development environments (IDEs). Our findings, which largely generalized across the studied IDEs and programming languages Java and C#, question several commonly shared assumptions and beliefs about developer testing: half of the developers in our study do not test; developers rarely run their tests in the IDE; most programming sessions end without any test execution; only once they start testing, do they do it extensively; a quarter of test cases is responsible for three quarters of all test failures; 12 percent of tests show flaky behavior; Test-Driven Development (TDD) is not widely practiced; and software developers only spend a quarter of their time engineering tests, whereas they think they test half of their time. We summarize these practices of loosely guiding one's development efforts with the help of testing in an initial summary on Test-Guided Development (TGD), a behavior we argue to be closer to the development reality of most developers than TDD.

Original languageEnglish
Article number8116886
Pages (from-to)261-284
Number of pages24
JournalIEEE Transactions on Software Engineering
Volume45
Issue number3
DOIs
Publication statusPublished - 2019

Bibliographical note

Green Open Access added to TU Delft Institutional Repository ‘You share, we take care!’ – Taverne project https://www.openaccess.nl/en/you-share-we-take-care
Otherwise as indicated in the copyright section: the publisher is the copyright holder of this work and the author uses the Dutch legislation to make this work public.

Keywords

  • Developer testing
  • Developer tests
  • Test-Driven Development
  • Test-Guided Development

Fingerprint

Dive into the research topics of 'Developer Testing in The IDE: Patterns, Beliefs, And Behavior'. Together they form a unique fingerprint.

Cite this