Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization
| Ano de defesa: | 2025 |
|---|---|
| Autor(a) principal: | |
| Orientador(a): | |
| Banca de defesa: | |
| Tipo de documento: | Tese |
| Tipo de acesso: | Acesso aberto |
| Idioma: | eng |
| Instituição de defesa: |
Universidade Federal de São Carlos
Câmpus São Carlos |
| Programa de Pós-Graduação: |
Programa de Pós-Graduação em Ciência da Computação - PPGCC
|
| Departamento: |
Não Informado pela instituição
|
| País: |
Não Informado pela instituição
|
| Palavras-chave em Inglês: | |
| Área do conhecimento CNPq: | |
| Link de acesso: | https://hdl.handle.net/20.500.14289/22666 |
Resumo: | This thesis addresses the challenge of defining, validating, and operationalizing good software testing practices, with a focus on improving the quality of test cases. It begins with a systematic literature review, which identifies 131 practices from 103 primary studies, refined into a set of 40 essential best practices. These practices were classified into code-oriented and no-code-oriented groups and validated through a practitioner-centered survey involving experienced software testers, who evaluated their clarity, relevance, applicability, and prioritization. Based on this foundation, the thesis introduces TAI-EvalGenTCS. This AI-based tool uses the OpenAI GPT-4 turbo model to evaluate test cases against proposed practices and generate optimized test cases. The tool was experimentally validated using 16 real-world Java projects, demonstrating its effectiveness in improving the modularity, maintainability, and compliance of the test cases with best practices. The survey results provided empirical confirmation of the proposed classification and offered valuable insights into tool support needs and industry perceptions. The contributions of this research include a structured and validated set of testing practices, a ranked list of essential test case features, empirical validation from industry practitioners, and a practical AI-powered solution that bridges the gap between test automation and test design quality. |
| id |
SCAR_62860ee9281d8a1ebd2c23d159e2b728 |
|---|---|
| oai_identifier_str |
oai:repositorio.ufscar.br:20.500.14289/22666 |
| network_acronym_str |
SCAR |
| network_name_str |
Repositório Institucional da UFSCAR |
| repository_id_str |
|
| spelling |
Villota Ibarra, CamiloRizzo Vincenzi, Auri Marcelohttp://lattes.cnpq.br/0611351138131709Maldonado, José Carloshttp://lattes.cnpq.br/8807333466702951http://lattes.cnpq.br/7749442562596651https://orcid.org/0000-0001-7926-6837https://orcid.org/0000-0001-5902-1672https://orcid.org/0000-0002-3779-71432025-09-01T18:44:32Z2025-05-13VILLOTA IBARRA, Camilo. Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization. 2025. Tese (Doutorado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2025. Disponível em: https://repositorio.ufscar.br/handle/20.500.14289/22666.https://hdl.handle.net/20.500.14289/22666This thesis addresses the challenge of defining, validating, and operationalizing good software testing practices, with a focus on improving the quality of test cases. It begins with a systematic literature review, which identifies 131 practices from 103 primary studies, refined into a set of 40 essential best practices. These practices were classified into code-oriented and no-code-oriented groups and validated through a practitioner-centered survey involving experienced software testers, who evaluated their clarity, relevance, applicability, and prioritization. Based on this foundation, the thesis introduces TAI-EvalGenTCS. This AI-based tool uses the OpenAI GPT-4 turbo model to evaluate test cases against proposed practices and generate optimized test cases. The tool was experimentally validated using 16 real-world Java projects, demonstrating its effectiveness in improving the modularity, maintainability, and compliance of the test cases with best practices. The survey results provided empirical confirmation of the proposed classification and offered valuable insights into tool support needs and industry perceptions. The contributions of this research include a structured and validated set of testing practices, a ranked list of essential test case features, empirical validation from industry practitioners, and a practical AI-powered solution that bridges the gap between test automation and test design quality.Esta tese aborda o desafio de definir, validar e operacionalizar boas práticas de teste de software, com foco na melhoria da qualidade dos casos de teste. O trabalho inicia-se com uma revisão sistemática da literatura, que identificou 131 práticas a partir de 103 estudos primários, refinadas em um conjunto de 40 práticas essenciais. Essas práticas foram classificadas em grupos orientados a código e não orientados a código e validadas por meio de uma pesquisa centrada em profissionais, envolvendo testadores de software experientes que avaliaram sua clareza, relevância, aplicabilidade e priorização. Com base nesse fundamento, a tese apresenta a TAI-EvalGenTCS, uma ferramenta baseada em IA que utiliza o modelo GPT-4 turbo da OpenAI para avaliar casos de teste em relação às práticas propostas e gerar casos de teste otimizados. A ferramenta foi validada experimentalmente com 16 projetos reais em Java, demonstrando sua eficácia na melhoria da modularidade, manutenibilidade e conformidade dos casos de teste com as boas práticas. Os resultados da pesquisa forneceram confirmação empírica da classificação proposta e ofereceram insights valiosos sobre as necessidades de suporte por ferramentas e percepções da indústria. As contribuições desta pesquisa incluem um conjunto estruturado e validado de práticas de teste, uma lista priorizada de características essenciais dos casos de teste, validação empírica com profissionais da indústria e uma solução prática impulsionada por IA que aproxima a automação de testes da qualidade do design de testes.Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)engUniversidade Federal de São CarlosCâmpus São CarlosPrograma de Pós-Graduação em Ciência da Computação - PPGCCUFSCarhttps://dl.acm.org/doi/10.1145/3592813.3592930Attribution-NonCommercial-ShareAlike 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-sa/3.0/br/info:eu-repo/semantics/openAccessGood software testing practicesTest casesTest case development practicesTest case generation toolsCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAOTowards a strategy and tool support for test generation based on good software testing practices: classification and prioritizationRumo a uma estratégia e apoio por ferramentas para a geração de testes baseada em boas práticas de teste de software: classificação e priorizaçãoinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisreponame:Repositório Institucional da UFSCARinstname:Universidade Federal de São Carlos (UFSCAR)instacron:UFSCARTEXTTese_Camilo__Final_.pdf.txtTese_Camilo__Final_.pdf.txtExtracted texttext/plain100573https://repositorio.ufscar.br/bitstreams/b0851ce0-6c0b-4215-ae54-d6d75b6538d3/download59488143d7374edaf026b941540fac5dMD53falseAnonymousREADTHUMBNAILTese_Camilo__Final_.pdf.jpgTese_Camilo__Final_.pdf.jpgGenerated Thumbnailimage/jpeg4119https://repositorio.ufscar.br/bitstreams/d48920cc-3ef8-4694-aff3-edb61d229702/download69c7c0db00c68fc29e9098bcfff00865MD54falseAnonymousREADCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-81167https://repositorio.ufscar.br/bitstreams/64d3db8a-6757-4130-b583-92caa8c9fecf/downloaddcb5d775186468eac043bfcac8407c86MD52falseAnonymousREADORIGINALTese_Camilo__Final_.pdfTese_Camilo__Final_.pdfapplication/pdf1798942https://repositorio.ufscar.br/bitstreams/90ae8cd9-cd2d-4335-bf1c-6287e738b83f/downloadb50b0688b7ffe50721b3b9408cccacc7MD51trueAnonymousREAD20.500.14289/226662025-09-02T03:04:27.766236Zhttp://creativecommons.org/licenses/by-nc-sa/3.0/br/Attribution-NonCommercial-ShareAlike 3.0 Brazilopen.accessoai:repositorio.ufscar.br:20.500.14289/22666https://repositorio.ufscar.brRepositório InstitucionalPUBhttps://repositorio.ufscar.br/oai/requestrepositorio.sibi@ufscar.bropendoar:43222025-09-02T03:04:27Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)false |
| dc.title.eng.fl_str_mv |
Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization |
| dc.title.alternative.por.fl_str_mv |
Rumo a uma estratégia e apoio por ferramentas para a geração de testes baseada em boas práticas de teste de software: classificação e priorização |
| title |
Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization |
| spellingShingle |
Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization Villota Ibarra, Camilo Good software testing practices Test cases Test case development practices Test case generation tools CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
| title_short |
Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization |
| title_full |
Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization |
| title_fullStr |
Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization |
| title_full_unstemmed |
Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization |
| title_sort |
Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization |
| author |
Villota Ibarra, Camilo |
| author_facet |
Villota Ibarra, Camilo |
| author_role |
author |
| dc.contributor.authorlattes.none.fl_str_mv |
http://lattes.cnpq.br/7749442562596651 |
| dc.contributor.authororcid.none.fl_str_mv |
https://orcid.org/0000-0001-7926-6837 |
| dc.contributor.advisor1orcid.none.fl_str_mv |
https://orcid.org/0000-0001-5902-1672 |
| dc.contributor.advisor-co1orcid.none.fl_str_mv |
https://orcid.org/0000-0002-3779-7143 |
| dc.contributor.author.fl_str_mv |
Villota Ibarra, Camilo |
| dc.contributor.advisor1.fl_str_mv |
Rizzo Vincenzi, Auri Marcelo |
| dc.contributor.advisor1Lattes.fl_str_mv |
http://lattes.cnpq.br/0611351138131709 |
| dc.contributor.advisor-co1.fl_str_mv |
Maldonado, José Carlos |
| dc.contributor.advisor-co1Lattes.fl_str_mv |
http://lattes.cnpq.br/8807333466702951 |
| contributor_str_mv |
Rizzo Vincenzi, Auri Marcelo Maldonado, José Carlos |
| dc.subject.eng.fl_str_mv |
Good software testing practices Test cases Test case development practices Test case generation tools |
| topic |
Good software testing practices Test cases Test case development practices Test case generation tools CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
| dc.subject.cnpq.fl_str_mv |
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
| description |
This thesis addresses the challenge of defining, validating, and operationalizing good software testing practices, with a focus on improving the quality of test cases. It begins with a systematic literature review, which identifies 131 practices from 103 primary studies, refined into a set of 40 essential best practices. These practices were classified into code-oriented and no-code-oriented groups and validated through a practitioner-centered survey involving experienced software testers, who evaluated their clarity, relevance, applicability, and prioritization. Based on this foundation, the thesis introduces TAI-EvalGenTCS. This AI-based tool uses the OpenAI GPT-4 turbo model to evaluate test cases against proposed practices and generate optimized test cases. The tool was experimentally validated using 16 real-world Java projects, demonstrating its effectiveness in improving the modularity, maintainability, and compliance of the test cases with best practices. The survey results provided empirical confirmation of the proposed classification and offered valuable insights into tool support needs and industry perceptions. The contributions of this research include a structured and validated set of testing practices, a ranked list of essential test case features, empirical validation from industry practitioners, and a practical AI-powered solution that bridges the gap between test automation and test design quality. |
| publishDate |
2025 |
| dc.date.accessioned.fl_str_mv |
2025-09-01T18:44:32Z |
| dc.date.issued.fl_str_mv |
2025-05-13 |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
| format |
doctoralThesis |
| status_str |
publishedVersion |
| dc.identifier.citation.fl_str_mv |
VILLOTA IBARRA, Camilo. Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization. 2025. Tese (Doutorado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2025. Disponível em: https://repositorio.ufscar.br/handle/20.500.14289/22666. |
| dc.identifier.uri.fl_str_mv |
https://hdl.handle.net/20.500.14289/22666 |
| identifier_str_mv |
VILLOTA IBARRA, Camilo. Towards a strategy and tool support for test generation based on good software testing practices: classification and prioritization. 2025. Tese (Doutorado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2025. Disponível em: https://repositorio.ufscar.br/handle/20.500.14289/22666. |
| url |
https://hdl.handle.net/20.500.14289/22666 |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.relation.uri.none.fl_str_mv |
https://dl.acm.org/doi/10.1145/3592813.3592930 |
| dc.rights.driver.fl_str_mv |
Attribution-NonCommercial-ShareAlike 3.0 Brazil http://creativecommons.org/licenses/by-nc-sa/3.0/br/ info:eu-repo/semantics/openAccess |
| rights_invalid_str_mv |
Attribution-NonCommercial-ShareAlike 3.0 Brazil http://creativecommons.org/licenses/by-nc-sa/3.0/br/ |
| eu_rights_str_mv |
openAccess |
| dc.publisher.none.fl_str_mv |
Universidade Federal de São Carlos Câmpus São Carlos |
| dc.publisher.program.fl_str_mv |
Programa de Pós-Graduação em Ciência da Computação - PPGCC |
| dc.publisher.initials.fl_str_mv |
UFSCar |
| publisher.none.fl_str_mv |
Universidade Federal de São Carlos Câmpus São Carlos |
| dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFSCAR instname:Universidade Federal de São Carlos (UFSCAR) instacron:UFSCAR |
| instname_str |
Universidade Federal de São Carlos (UFSCAR) |
| instacron_str |
UFSCAR |
| institution |
UFSCAR |
| reponame_str |
Repositório Institucional da UFSCAR |
| collection |
Repositório Institucional da UFSCAR |
| bitstream.url.fl_str_mv |
https://repositorio.ufscar.br/bitstreams/b0851ce0-6c0b-4215-ae54-d6d75b6538d3/download https://repositorio.ufscar.br/bitstreams/d48920cc-3ef8-4694-aff3-edb61d229702/download https://repositorio.ufscar.br/bitstreams/64d3db8a-6757-4130-b583-92caa8c9fecf/download https://repositorio.ufscar.br/bitstreams/90ae8cd9-cd2d-4335-bf1c-6287e738b83f/download |
| bitstream.checksum.fl_str_mv |
59488143d7374edaf026b941540fac5d 69c7c0db00c68fc29e9098bcfff00865 dcb5d775186468eac043bfcac8407c86 b50b0688b7ffe50721b3b9408cccacc7 |
| bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
| repository.name.fl_str_mv |
Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR) |
| repository.mail.fl_str_mv |
repositorio.sibi@ufscar.br |
| _version_ |
1851688890092486656 |