tsdetect
TSDetect is an open-source test smell detection tool. TSDetect is available as an IntelliJ plugin and command-line tool.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.0%) to scientific vocabulary
Keywords
Repository
TSDetect is an open-source test smell detection tool. TSDetect is available as an IntelliJ plugin and command-line tool.
Basic Info
Statistics
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 50
- Releases: 0
Topics
Metadata Files
README.md
TSDetect
//: # ()
TSDetect is your all in one tool for deteing code smells within your tests. Based on the research by https://testsmells.org/, This plugin analyzes unit tests in order to find potential design flaws.
Installation (Needs to be updated)
- Using IDE built-in plugin system:
Settings/Preferences > Plugins > Marketplace > Search for "TSDetect" > Install Plugin
- Manually:
Download the latest release and install it manually using Settings/Preferences > Plugins > ⚙️ > Install plugin from disk...
Contributing
For contributing test smells to the project see the Contributing Page
Setup
Clone repository
We recommend cloning through IntelliJ. This will ensure all dependencies are set up correctly. Be sure to give gradle time to finish setting up.
Set JDK Version
Ensure that project JDK and Language Level are set to 13 This can be found as shown below File > Project Structure > Project
| Open Project Structure | Select JDK13 and Language Level 13 |
|------------------------------------------------------------------|-----------------------------------------------------------------------|
|
|
|
Running Plugin
Select the Run Plugin option from the drop down.

Running Unit Tests
- There is a known issue where gradle will not always update the version of java used to run unit tests, can be fixed manually in
- This can be remedied by manually going into following setting sand updating to use java 13
Project Settings > Build > Execution > Deployment > Build Tools > Gradle
For more info, please go to https://testsmells.org/
Plugin based on the IntelliJ Platform Plugin Template.
Owner
- Name: Test Smell Research
- Login: TestSmells
- Kind: organization
- Location: United States of America
- Website: https://testsmells.org/
- Repositories: 4
- Profile: https://github.com/TestSmells
Repositories to hold research related to test smells
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: TSDetect - IntelliJ Plugin
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Anthony
family-names: Peruma
email: peruma@hawaii.edu
affiliation: University of Hawaii at Manoa
orcid: 'https://orcid.org/0000-0003-2585-657X'
repository-code: 'https://github.com/TestSmells/TSDetect'
keywords:
- test smells
- unit testing
- junit
license: gnuplot
GitHub Events
Total
- Watch event: 4
Last Year
- Watch event: 4
Dependencies
- mysql 8.0
- phpmyadmin/phpmyadmin latest
- amazoncorretto 17.0.4 build
- org.apache.logging.log4j:log4j-api 2.17.2 implementation
- org.apache.logging.log4j:log4j-core 2.17.2 implementation
- org.bidib.org.oxbow:swingbits 1.2.2 implementation
- org.jfree:jfreechart 1.5.3 implementation
- org.swinglabs.swingx:swingx-all 1.6.5-1 implementation
- org.junit.jupiter:junit-jupiter 5.8.1 testImplementation
- org.mockito:mockito-inline 3.12.4 testImplementation
- com.fasterxml.jackson.core:jackson-databind 2.14.2 implementation
- mysql:mysql-connector-java 8.0.31 implementation
- org.springframework.boot:spring-boot-starter-actuator * implementation
- org.springframework.boot:spring-boot-starter-jetty * implementation
- org.springframework.boot:spring-boot-starter-jooq * implementation
- org.springframework.boot:spring-boot-starter-validation * implementation
- org.springframework.boot:spring-boot-starter-web * implementation
- org.junit.jupiter:junit-jupiter 5.8.1 testImplementation
- org.springframework.boot:spring-boot-starter-test * testImplementation
- org.testcontainers:mysql 1.17.6 testImplementation
- @babel/core ^7.19.6 development
- @babel/node ^7.20.0 development
- @babel/preset-env ^7.19.4 development
- @babel/preset-react ^7.18.6 development
- babel-loader ^8.3.0 development
- css-loader ^6.7.1 development
- html-webpack-plugin ^5.5.0 development
- image-webpack-loader ^8.1.0 development
- path ^0.12.7 development
- style-loader ^3.3.1 development
- webpack ^5.74.0 development
- webpack-cli ^4.10.0 development
- webpack-dev-server ^4.11.1 development
- @uiw/react-color-sketch ^1.1.2
- chart.js ^3.9.1
- react ^18.2.0
- react-bootstrap ^2.5.0
- react-chartjs-2 ^4.3.1
- react-color ^2.19.3
- react-dom ^18.2.0
- react-router ^6.4.3
- react-router-dom ^6.4.3
- react-select ^5.7.0
- 812 dependencies
- JetBrains/qodana-action v4.1.0 composite
- actions/cache v2.1.6 composite
- actions/checkout v2.4.0 composite
- actions/setup-java v2 composite
- actions/upload-artifact v2 composite
- actions/upload-artifact v2.2.4 composite
- gradle/wrapper-validation-action v1.0.4 composite
- actions/checkout v2.4.0 composite
- actions/setup-java v2 composite
- actions/checkout v2.4.0 composite
- actions/setup-java v2 composite
- jtalk/url-health-check-action v2 composite