Investigation of Code Change and Smell to Support the Software Regression Test Selection (2024)
- Authors:
- Autor USP: MORI, ALLAN VICTOR - ICMC
- Unidade: ICMC
- Sigla do Departamento: SSC
- DOI: 10.11606/T.55.2024.tde-28112024-143829
- Subjects: ENGENHARIA DE SOFTWARE; QUALIDADE DE SOFTWARE; SOFTWARES
- Keywords: Abordagem de mudança e smell; Baseado em dependência; Change and smell approach; Code smell; Dependency-based; Regression testing selection; Seleção de teste de regressão; Smell de código
- Language: Inglês
- Abstract: O teste de regressão é uma atividade de manutenção da engenharia de software que envolve a reexecução de casos de teste em um sistema de software modificado para verificar se as alterações no código expõe falhas existentes. No entanto, ele pode consumir muito tempo e recursos, especialmente em sistemas grandes. As técnicas de seleção de testes de regressão podem ajudar a gerenciar esse problema, selecionando um subconjunto de casos de teste a serem executados. A técnica "Change Based" seleciona um subconjunto dos casos de teste existentes e verifica classes modificadas. Além de reduzir o conjunto de testes, essa técnica pode reduzir a capacidade de revelar falhas. A partir dessa perspectiva, os code smells são conhecidos por identificar problemas de design e de qualidade de software. Alguns trabalhos exploraram a associação entre smells e falhas com alguns resultados promissores. Inspirados por esses resultados, propomos combinar a informações sobre alteração do código e code smells para selecionar testes de regressão e apresentamos oito técnicas. Além disso, desenvolvemos a Regression Testing Selection Tool (RTST) para automatizar o processo de seleção usando essas técnicas. Avaliamos empiricamente a abordagem em projetos do Defects4J, comparando a eficácia das novas técnicas com as técnicas clássicas de seleção de regressão. Os resultados mostram que a técnica Change and Smell Intersection Based atinge a maior taxa de redução no tamanho do conjunto de testes, mas commenor cobertura de classe. Por outro lado, a técnica Change and "Smell Firewall" obtém a menor redução no tamanho do conjunto de testes com os casos de teste de maior eficácia na detecção de falhas, sugerindo que a combinação de code smells e classes alteradas podem potencialmente encontrar mais falhas. A técnica "Smell Based" fornece uma cobertura de classe comparável à abordagem de mudança de código e smell. Nossas descobertas indicam oportunidades para melhorar a eficácia do teste de regressão e destacam que a qualidade do software deve ser uma preocupação durante toda a evolução do software.
- Imprenta:
- Publisher place: São Carlos
- Date published: 2024
- Data da defesa: 05.08.2024
- Este periódico é de acesso aberto
- Este artigo é de acesso aberto
- URL de acesso aberto
- Cor do Acesso Aberto: gold
- Licença: cc-by-nc-sa
-
ABNT
MORI, Allan. Investigation of Code Change and Smell to Support the Software Regression Test Selection. 2024. Tese (Doutorado) – Universidade de São Paulo, São Carlos, 2024. Disponível em: https://www.teses.usp.br/teses/disponiveis/55/55134/tde-28112024-143829/. Acesso em: 28 dez. 2025. -
APA
Mori, A. (2024). Investigation of Code Change and Smell to Support the Software Regression Test Selection (Tese (Doutorado). Universidade de São Paulo, São Carlos. Recuperado de https://www.teses.usp.br/teses/disponiveis/55/55134/tde-28112024-143829/ -
NLM
Mori A. Investigation of Code Change and Smell to Support the Software Regression Test Selection [Internet]. 2024 ;[citado 2025 dez. 28 ] Available from: https://www.teses.usp.br/teses/disponiveis/55/55134/tde-28112024-143829/ -
Vancouver
Mori A. Investigation of Code Change and Smell to Support the Software Regression Test Selection [Internet]. 2024 ;[citado 2025 dez. 28 ] Available from: https://www.teses.usp.br/teses/disponiveis/55/55134/tde-28112024-143829/ - Anomaly analyses to guide software testing activity
- Code change and smell techniques for regression test selection
- An approach to regression testing selection based on code changes and smells
- Using an incremental testing strategy to improve students' perception of software quality
- How to identify the infeasible test requirements using static analyse?: an exploratory study
- What are the differences between group and individual modeling when learning BPMN?
- A strategy to support the infeasible test requirements identification
Informações sobre o DOI: 10.11606/T.55.2024.tde-28112024-143829 (Fonte: oaDOI API)
How to cite
A citação é gerada automaticamente e pode não estar totalmente de acordo com as normas
