Reality check on developers' perception! A case study of software testability and its effects

Presenter: Tushar Sharma
Date: 12 October 2022


Software testability is commonly defined as the degree to which the development of test cases can be facilitated by software design choices. Despite various studies on testability and its characteristics, the effects of testability on tests and overall software quality are unknown. In this presentation, I will discuss a catalog of four testability smells, and a survey targeted to gather software developers' perspectives on testability in general and our proposed testability smells in particular. I will also elaborate on a large-scale empirical study on 941 Java repositories containing approximately 11 million lines of code to investigate whether empirical data supports the perception of the developers on testability. Specifically, the study explores the relationship of testability with test quality, the number of tests, and reported bugs.