Smelly test is an extension that helps developers mitigate test smells in their test suites. Smelly test is focused on the javascript/typescript ecosystem, for the backend and frontend.
Test smells have been researched and are known for their negative impact on test code understanding and making maintenance difficult. You might be wondering why another extension that focuses on test smells in the era of AI. This is a fair thought and I had the same question while building the extension. However, the javascript/typescript ecosystem lacks such a tool to help mitigate test smells in code bases out there. If we compare the Java ecosystem there are tools developed for that for years in academic settings. If we start to dig into the frontend technologies for mitigating test smells it is even worse. This extension provides an aid for that.
Smelly is available to run via command line
Installing it from VsCode marketplace
The core of smelly is avaiable for usage as well, it allows tools to us the smell test detection engine.
This extension is one of the results of an ongoing research effort to navigate the intersection between the TDD practice and test smell generation. Here are the publications behind it:
- Patterns that make TDD harder an ebook from practitioners for practitioners
- The research goal: CISTI2023 - Towards a TDD maturity model through an anti-patterns framework
- The Literature Review: Exploring the Connection between the TDD Practice and Test Smells—A Systematic Literature Review
You will find loads of resources available online to go deeper into the subject, however, if you are looking to a curated list here goes:
- Evaluating Large Language Models in Detecting Test Smells
- What we know about smells in software test code
- Smells in software test code: A survey of knowledge in industry and academia
- TERTS: Um tutor de ensino para refatoraç̃ao de test smells
Papers of the Week is a newsletter that publishes weekly papers about software engineering favoring TDD, software testing and DevOps.