Table 4.
Test smells included in our study, their definition, and the independent variables for each smell under investigation
| Test smell | Definition | Metric | Description | Structural/textual |
|---|---|---|---|---|
| Eager test | A test method involving many methods of the object being tested. | NMC | Number of method calls | Structural |
| TMC | Test method cohesion, i.e., the average textual similarity between all the pairs methods called by a test method | Textual | ||
| TS | Textual scattering, i.e., the extent to which the text within the method body is conceptually scattered | Textual | ||
| NRF | Number of references to files | Structural | ||
| Mystery guest | A test that uses external resources (e.g., databases or files). | NRDB | Number of references to database | Structural |
| Resource optimism | A test that uses external resources without checking the state of these. | ERNC | State of external resources, which are not files, not checked | Structural |
| FRNC | State of file resources not checked | Structural | ||
| PR | Pair redundancy is the ratio between the items covered by a test and those covered by another one | Structural | ||
| Test redundancy | A test that could be removed without impacting the test suite. | SR | Suite redundancy is the ratio between the items covered by a test compared and those covered by all other tests in the test suite | Structural |