Estudo do desempenho de LLMs como geradores automáticos de teste unitário para programas Python
| dc.contributor.advisor-co1 | Vincenzi, Auri | |
| dc.contributor.advisor-co1Lattes | http://lattes.cnpq.br/0611351138131709 | |
| dc.contributor.advisor1 | Endo, André Takeshi | |
| dc.contributor.advisor1Lattes | http://lattes.cnpq.br/4221336619791961 | |
| dc.contributor.advisor1orcid | https://orcid.org/0000-0002-8737-1749 | |
| dc.contributor.author | Guerino, Lucca Renato | |
| dc.contributor.authorlattes | http://lattes.cnpq.br/3505994629421906 | |
| dc.contributor.authororcid | https://orcid.org/0009-0004-6071-1418 | |
| dc.date.accessioned | 2025-12-19T18:35:00Z | |
| dc.date.issued | 2025-12-12 | |
| dc.description.abstract | Software testing is a fundamental stage in system development, essential for detecting faults and ensuring the quality of the final product, yet it remains challenging for dynamically typed languages such as Python. This study examines the ability of the ChatGPT-3.5-turbo language model to generate test sets for Python programs, comparing its performance with tools such as Pynguin and with existing test suites. For this evaluation, 40 Python programs were used, from which Pytest-compliant tests were generated through the OpenAI API under varying temperature settings. The tests were validated using Pytest, and coverage and mutation scores were obtained with Coverage, MutPy, and Cosmic-Ray. The results show that ChatGPT-3.5-turbo produces valid tests for simple programs but maintains an overall average below 28%, despite its low computational cost. Higher temperatures improve performance, and combining tests generated at different temperatures increases diversity, allowing the model to outperform both Pynguin and existing test suites in decision coverage and mutation score. | eng |
| dc.description.resumo | O teste de software é uma etapa fundamental no desenvolvimento de sistemas, sendo essencial para a detecção de falhas no desenvolvimento e a garantia da qualidade do produto final, o que continua sendo um desafio para linguagens dinamicamente tipadas, como o Python. O estudo examina a capacidade do modelo de linguagem ChatGPT-3.5-turbo de gerar conjuntos de testes para programas em Python, comparando seu desempenho ao de ferramentas como o Pynguin e a conjuntos de testes já existentes. Para essa avaliação, foram utilizados 40 programas em Python, a partir dos quais se geraram testes compatíveis com Pytest por meio da API da OpenAI, variando níveis de temperatura de geração. Os testes foram validados com Pytest, enquanto métricas de cobertura e pontuação de mutação foram obtidas com as ferramentas Coverage, MutPy e Cosmic-Ray. Os resultados mostram que o ChatGPT-3.5-turbo gera testes válidos para programas simples, mas mantém média geral abaixo de 28%, embora com baixo custo computacional. Temperaturas mais altas melhoram o desempenho, e combinar testes de diferentes temperaturas aumenta a diversidade, permitindo superar Pynguin e testes existentes em cobertura de decisão e pontuação de mutação. | |
| dc.identifier.citation | GUERINO, Lucca Renato. Estudo do desempenho de LLMs como geradores automáticos de teste unitário para programas Python. 2025. Trabalho de Conclusão de Curso (Graduação em Engenharia de Computação) – Universidade Federal de São Carlos, São Carlos, 2025. Disponível em: https://repositorio.ufscar.br/handle/20.500.14289/23337. | por |
| dc.identifier.uri | https://hdl.handle.net/20.500.14289/23337 | |
| dc.identifier.url | https://github.com/aurimrv/python_experiments2 | |
| dc.language.iso | por | |
| dc.publisher | Universidade Federal de São Carlos | |
| dc.publisher.address | Campus São Carlos | |
| dc.publisher.course | Engenharia de Computação - EC | |
| dc.publisher.initials | UFSCar | |
| dc.rights | Attribution-NoDerivs 3.0 Brazil | en |
| dc.rights.uri | http://creativecommons.org/licenses/by-nd/3.0/br/ | |
| dc.subject | teste de software | |
| dc.subject | modelos de linguagem de larga escala | |
| dc.subject.cnpq | CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO | |
| dc.subject.ods | 9. Indústria, Inovação e Infraestrutura | |
| dc.title | Estudo do desempenho de LLMs como geradores automáticos de teste unitário para programas Python | |
| dc.title.alternative | A study on the performance of LLMs as automatic unit test generators for Python programs | eng |
| dc.type | TCC |
Arquivos
Pacote Original
1 - 1 de 1
Carregando...
- Nome:
- TCC_EC_Lucca_Guerino.pdf
- Tamanho:
- 492.37 KB
- Formato:
- Adobe Portable Document Format