Aplicação de testes automatizados para aplicações mobile desenvolvidas em React Native

Santos, Everson Delmaschio dos (2022)

tcc

RESUMO: Os aplicativos mobile vêm se tornando cada vez mais importantes no dia a dia da sociedade, fato evidenciado através da quantidade de downloads de aplicativos que crescem constantemente nos últimos anos, assim como, na necessidade de atualização constante dos aplicativos para acompanhar o dia a dia da sociedade. Dado a importância dos aplicativos mobile na atualidade, e a frequente rotina de atualização desses aplicativos, é de vital importância desenvolver meios para garantir a qualidade de software, no intuito de prevenir falhas e garantir o funcionamento correto da aplicação a cada nova release. O objetivo deste trabalho é apontar os testes automatizados como ferramenta de garantia de qualidade e prevenção de falhas, demonstrando por meio de exemplos práticos, como os testes automatizados unitários, de integração e de sistema podem fornecer maior segurança e qualidade para a aplicação, capaz de fornecer uma ampla cobertura de teste, que pode ser executada antes de cada nova publicação. Além disso, gerar relatórios de estado da aplicação baseado em casos de teste implementados, no intuito de oferecer um diagnóstico da saúde da aplicação. O trabalho iniciou-se a partir de uma pesquisa bibliográfica dos conceitos de teste de software e suas classificações. Após essa pesquisa, foram realizadas pesquisas e comparações relativas a ferramentas de teste de software de código aberto em relação a recursos e facilidade de uso. Dado a seleção das ferramentas, foi realizada a implementação de casos de testes em uma aplicação modelo desenvolvida em React Native para este trabalho. Por fim, com base nos resultados obtidos, foi possível concluir que as ferramentas de teste automatizado são uma excelente opção para validação do funcionamento de aplicações mobile desenvolvidas com React Native, visto que, tais ferramentas proporcionam recursos para a execução de rotina de testes que podem ser executadas previamente a cada nova publicação fornecendo maior segurança e qualidade para a aplicação.

ABSTRACT: Mobile applications have become increasingly important in society's daily life, a fact evidenced by the number of application downloads that have been constantly growing in recent years, as well as the need for constant updating of applications to accompany the day to day of the society. Given the importance of mobile applications today, and the frequent updating routine of these applications, it is vital to develop ways to guarantee software quality, in order to prevent failures and ensure the correct functioning of the application with each new release. The objective of this work is to point out automated tests as a quality assurance and failure prevention tool, demonstrating through practical examples, how automated tests can provide a diagnosis of the health of the application, capable of providing a wide test coverage, which can run before each new publication. In addition, generate application status reports based on implemented test cases, in order to provide a technical view for decision making. The work started from a bibliographic research of software testing concepts and their classifications. Following this survey, surveys and comparisons were performed regarding open source software testing tools in terms of features and ease of use. Given the selection of tools, test cases were implemented in a model application developed in RN for this work. Finally, based on the results obtained, it was possible to conclude that the automated test tools are an excellent option for validating the operation of mobile applications developed with RN, since such tools provide resources for the routine execution of tests that can be performed prior to each new publication providing greater security and quality for the application.


Collections: