Sentinel: A process for automatic removing of Test Smells

  • Adriano Pizzini PUCPR / IFC
  • Sheila Reinehr PUCPR
  • Andreia Malucelli PUCPR

Resumo


As software evolves, the cost related to quality improvement increases. Test code quality is essential to assist the development team in software maintenance activities. One of the problems that deteriorate the quality of unit tests is Test Smells (TS). TS are poor practices in unit test (UT) design or implementation and can be removed through refactoring. Refactoring is the process of improving the code's internal structures without changing the software's external behavior. Some studies identify problems arising from manual refactoring and propose semi-automatic refactoring to assist the team in removing TS. However, these proposals require the team's intervention and issues related to the team's knowledge and available time can harm software quality improvement activities. In this paper, we present the results of an exploratory study with open source software repositories to identify the effects caused by automatic refactoring on UT code. The effects of automatic removal are related to compilation errors, execution failures, and changes in the behavior of unit tests. From the results of the study, we propose a process for the development of automatic refactoring tools to improve the quality of UT by removing TS. The results can help developers and researchers design automatic refactoring tools that improve the quality of unit tests, benefiting the team and the development process.

Palavras-chave: Validation, Unit test, Refactoring, Test smell
Publicado
07/11/2023
PIZZINI, Adriano; REINEHR, Sheila; MALUCELLI, Andreia. Sentinel: A process for automatic removing of Test Smells. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 22. , 2023, Brasília/DF. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2023 . p. 80–89.