The test smell detection was made by a tool named TSDetect. This tool is an AST based tool that identify test smells in source code. We have selected 272 Java open source projects throughout Github and then we analysed all of them with TSDetect's help. Each and every project generated an output .csv file which contained information of 21 different test smells. But, for our study, we've only looked into 7 of these smells where 6 of them were found using TSDetect and the other were known from the literature (Test Code Duplication).
After gathering information of all 272 projects, we then started searching for good examples so that we could compose our survey with real examples. They needed to be short and external dependencies free. All classes chosen had some of their methods extracted, for purposes of shortening the time to complete the survey.
The survey was performed in June 2020, there were 2011 e-mails sent to developers inviting them to take part on the survey. Only 73 developers answered the survey (3,63%).
Concerning the second goal of our study, the Pull Requests sent to Github projects came from the same 272 projects aforementioned. This step of our study needed to be more cautious because the future data that would be retrieved could be easily manipulated. To do so, we created some rules on sending the Pull Requests:
No project could have more than 1 Pull Request;
If a test smell was found in a test class, all occurrences of this smell needed to be refactored;
Only 1 test smell could be refactored per class.
So, we've sent 40 Pull Requests with hopes of receiving approvals from the developers.
This resulted in a work whose results are posted here.