Unit test code, just like regular/production source code, is subject to bad programming practices, known also as anti-patterns, defects and smells [1]. Smells, being symptoms of bad design or implementation decisions, has been proven to be responsible for decreasing the quality of software systems from various aspects, such as making it harder to understand, more complex to maintain, and more prone to errors and bugs [2].
Test smells are defined as bad programming practices in unit test code (such as how test cases are organized, implemented and interact with each other) that indicate potential design problems in the test source code [3], [4], [5], [6].
The objective of this project is to educate developers on the types of unit testing smells that developers typically introduce or encounter when writing unit tests. To this extent, this site provides definitions (along with examples) of unit test smells and an open-source tool to detect the different smell types in the source code.