Scented since the beginning: On the diffuseness of test smells in automatically generated test code

Giovanni Grano, Fabio Palomba, Dario Di Nucci, Andrea De Lucia, Harald Gall

Research output: Contribution to journalArticleScientificpeer-review

Abstract

Software testing represents a key software engineering practice to ensure source code quality and reliability. To support developers in this activity and reduce testing effort, several automated unit test generation tools have been proposed. Most of these approaches have the main goal of covering as more branches as possible. While these approaches have good performance, little is still known on the maintainability of the test code they produce, i.e.,whether the generated tests have a good code quality and if they do not possibly introduce issues threatening their effectiveness. To bridge this gap, in this paper we study to what extent existing automated test case generation tools produce potentially problematic test code. We consider seven test smells, i.e.,suboptimal design choices applied by programmers during the development of test cases, as measure of code quality of the generated tests, and evaluate their diffuseness in the unit test classes automatically generated by three state-of-the-art tools such as RANDOOP, JTEXPERT, and EVOSUITE. Moreover, we investigate whether there are characteristics of test and production code influencing the generation of smelly tests. Our study shows that all the considered tools tend to generate a high quantity of two specific test smell types, i.e.,Assertion Roulette and Eager Test, which are those that previous studies showed to negatively impact the reliability of production code. We also discover that test size is correlated with the generation of smelly tests. Based on our findings, we argue that more effective automated generation algorithms that explicitly take into account test code quality should be further investigated and devised.
Original languageEnglish
JournalJournal of Systems and Software
DOIs
Publication statusPublished - Oct 2019

Fingerprint Dive into the research topics of 'Scented since the beginning: On the diffuseness of test smells in automatically generated test code'. Together they form a unique fingerprint.

Cite this