Bragança, Alexandre Manuel TavaresMelo, Mélanie Almeida2023-12-192023-11-15http://hdl.handle.net/10400.22/24264Software testing is an essential procedure in the development and upkeep of software of superior quality. Nevertheless, the process of manually writing test cases is frequently characterized by its laborious and repetitive nature, as well as its susceptibility to errors. This project introduces a proposed tool named Speedy Steps, designed to enhance the efficiency and efficacy of software testing through the automation of test case generation. The tool uses a question-and-answer approach to interact with the user and collect information pertaining to the system under examination, including its operation and prerequisites. The Speedy Steps solution builds a collection of test cases, alongside the necessary code for their execution, using the information that has been gathered. Moreover, the tool has been specifically built to generate documentation for the test cases, so improving their maintainability and easing comprehension and utilization by developers. In the context of a software development organization, a proof of concept was established to validate the functionality and effectiveness of the tool. The primary aim of this research project was to collect data that demonstrates a significant decrease in the duration and labor required for test case composition, while simultaneously improving the quality and comprehensiveness of the tests, because of utilizing the tool. This study showcases the potential of an auxiliary test writing tool named Speedy Steps, which enhances the efficiency and efficacy of software testing. Furthermore, it establishes a basis for future research in this domain.Os testes de software são um procedimento essencial para o desenvolvimento e a manutenção de software de qualidade superior. No entanto, o processo de escrita manual de casos de teste é frequentemente caracterizado pela sua natureza demorada, repetitiva e suscetível a erros. Este projeto propõe uma ferramenta auxiliar para a escrita de testes denominada Speedy Steps, concebida para aumentar a eficiência e a eficácia dos testes de software através da automatização da geração de casos de teste. A ferramenta utiliza uma abordagem de perguntas e respostas para interagir com o utilizador e recolher dados relativos ao sistema a ser testado, englobando aspetos como o seu funcionamento e requisitos. Com base na informação recolhida, Speedy Steps gera um conjunto de casos de teste, bem como o respetivo código necessário para a sua execução. Além disso, a ferramenta foi concebida com o objetivo de gerar documentação para os casos de teste, melhorando assim a sua manutenção e facilitando a compreensão e utilização por parte dos programadores. Para validar o uso e a eficácia da ferramenta, foi construída uma prova de conceito no contexto de uma organização de desenvolvimento de software. O objetivo deste projeto de estudo foi recolher resultados que indicam uma redução considerável do tempo e do esforço necessários para escrever casos de teste, melhorando ao mesmo tempo a qualidade e a cobertura dos testes. Este estudo mostra o potencial de uma ferramenta auxiliar de escrita de testes denominada Speedy Steps, com o qual se constatou um aumentou da eficiência e da eficácia na escrita de testes de software. Adicionalmente, este projeto permitiu estabelecer uma fundação para investigação futura neste domínio.engSoftware TestingQuality AssuranceTest GenerationCode GenerationTest DocumentationRequirement AnalysisSpeedy StepsFerramenta auxiliar de geração e automatização de testes para uma melhor gestão dos requisitosAuxiliary tool of test generation and automation for better requirements managementmaster thesis203414241