O papel das ferramentas de automação de testes funcionais em contexto de projetos dinâmicos e complexos

Data
2016-08-22
Título da revista
ISSN da revista
Título do Volume
Editora
Projetos de investigação
Unidades organizacionais
Fascículo
Resumo
Atualmente o software faz parte das nossas vidas e sociedade e estamos cada vez mais dependentes dele. A complexidade do software também está a crescer e, de modo a verificar todos os seus componentes e funcionalidades, é necessário efetuar uma quantidade exorbitante de casos de teste durante a fase de desenvolvimento. O teste de software é uma atividade crítica no ciclo de vida de desenvolvimento de software e pode ser testado quer manualmente ou automaticamente. No contexto da automação de testes, a utilização de uma framework permite melhorar de forma eficiente a extensibilidade e reutilização de testes automáticos. Esta dissertação foi realizada em âmbito do estágio numa empresa internacional de seguros que se encontra a fazer um upgrade do seu sistema antigo para um core system mais moderno. Trata-se de um projeto de grandes dimensões e complexidade, sendo que para realizar as atividades de teste de software envolve uma grande quantidade de esforço, quer na criação ou na execução de vários casos de testes. O trabalho realizado para esta dissertação consistiu no desenvolvimento de testes funcionais automáticos para testar uma aplicação web-based pertencente ao core system. A aplicação suporta e gere processos de seguros centrais em toda a cadeia de valores, desde o planeamento das atividades de marketing ou a criação de cotações até todo o ciclo de vida de uma apólice, comissões, sinistros, incluindo integração a fornecedores de serviços externos, ajuste de perdas, resseguros e gestão de informação. Nesse sentido, exploraram-se conceitos da automação de testes e utilizou-se esse conhecimento para desenvolver testes automáticos numa nova proposta/framework, permitindo o reaproveitamento do código dos scripts de testes para o desenvolvimento de novos testes e para a criação de novos casos de teste a serem executados. Através do desenvolvimento de testes automáticos foi possível perceber qual o impacto que a automação de testes pode trazer em projetos complexos e dinâmicos, sendo também importante a definição de uma framework adequada à automação dos testes funcionais. Ficou claro que a automação de testes permite auxiliar as atividades de teste manual do software e reduzir o esforço necessário para a execução dos casos de teste.
Currently the software is part of our lives and society and we are increasingly dependent on it. The complexity of the software is also growing and in order to check all its components and features, it must perform an exorbitant amount of test cases during the development phase. Software testing is a critical activity in the software development life cycle and can be tested either manually or automatically. In the context of test automation, the use of a framework enables efficiently improve the extensibility and reuse of automated tests. This work was performed on stage under an international insurance company that is doing an upgrade from its old system to a more modern core system. It is a project of great size and complexity, whereas to carry out software testing activities it involves a lot of effort, both in the creation and execution of several test cases. The work done for this thesis was the development of automated functional testing to test a web-based web application belonging to the core system. The application supports and manages core insurance processes across the value chain, from planning of marketing activities, creating quotations to the entire life cycle of a policy, commissions, insurance claims, including integration to external service providers, adjustment losses, reinsurance and management information. Accordingly, concepts of test automation were explored and that knowledge was used to develop automated testing with a new proposal/framework, allowing code reuse of test scripts for the development of new tests and creating new test cases to be performed. Through the development of automated testing was possible to see what impact test automation can bring in complex and dynamic projects, also being important to define an appropriate framework for automating functional tests. It was clear that the test automation allows assist manual testing activities of software and reduces the effort required for the execution of test cases.
Descrição
Dissertação de Mestrado em Engenharia Informática
Palavras-chave
Software , Automação de testes , Testes funcionais
Citação