Uma Abordagem Unificada para Testes Automatizados em Arquiteturas Web Modernas

  • João Victor de Morais UFLA
  • Rafael Durelli UFLA
  • Ricardo Terra UFLA

Resumo


A crescente adoção de arquiteturas web modernas tornou a automação de testes essencial à qualidade e à evolução dos sistemas. Entretanto, suítes automatizadas ainda enfrentam desafios relacionados à fragilidade, ao elevado custo de manutenção e ao acoplamento com ferramentas de automação. Este trabalho propõe uma abordagem unificada para testes funcionais automatizados, integrando testes de API e interface Web em uma arquitetura modular orientada à reutilização, ao desacoplamento e à manutenção evolutiva. Como contribuições, o trabalho sistematiza vinte requisitos técnicos, propõe uma arquitetura que os materializa e a avalia longitudinalmente em um projeto real de grande porte. Em aproximadamente doze meses de uso contínuo, mais de 80% dos 97 Merge Requests adicionaram exclusivamente novos cenários, enquanto apenas três envolveram correções em testes existentes. Isso indica que a abordagem sustentou a expansão de uma suíte com 300 casos de teste, mantendo estabilidade e baixa demanda por manutenção corretiva.
Palavras-chave: Testes de Software, Testes Funcionais Automatizados, Testes de API

Referências

Paul Ammann and Jeff Offutt. 2016. Introduction to Software Testing. Cambridge University Press, Cambridge, UK.

Mike Cohn. 2009. Succeeding with Agile: Software Development Using Scrum. Addison-Wesley Professional, Upper Saddle River, NJ.

João Victor de Morais, Neumar Costa Malheiros, and Ricardo Terra. 2025. Automação de Testes de APIs REST no SisNIR. In X Simpósio Brasileiro de Testes de Software Sistemático e Automatizado (SAST). 138–140.

Moritz Eck, Fabio Palomba, Marco Castelluccio, and Alberto Bacchelli. 2019. Understanding flaky tests: The developer’s perspective. In 27th International Symposium on the Foundations of Software Engineering (ESEC/FSE). 830–840.

Martin Fowler. 2018. Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional, Boston, MA.

Boni García, Jose M. del Alamo, Maurizio Leotta, and Filippo Ricca. 2024. Exploring Browser Automation: A Comparative Study of Selenium, Cypress, Puppeteer, and Playwright. In 21st International Conference on the Quality of Information and Communications Technology (QUATIC). 142–149.

Boni García, Filippo Ricca, Maurizio Leotta, and Mario Munoz-Organero. 2026. Test Automation with Selenium: A Survey. Information and Software Technology 194 (2026), 108077.

Vahid Garousi and Mika V. Mäntylä. 2016. When and What to Automate in Software Testing? A Multi-Vocal Literature Review. Information and Software Technology 76 (2016), 92–117.

Satish Gojare, Rahul Joshi, and Dhanashree Gaigaware. 2015. Analysis and Design of Selenium WebDriver Automation Testing Framework. Procedia Computer Science 50 (2015), 341–346.

Michaela Greiler, Arie van Deursen, and Margaret-Anne Storey. 2013. Automated Detection of Test Fixture Strategies and Smells. In 6th International Conference on Software Testing, Verification and Validation (ICST). 322–331.

IEEE. 1998. IEEE Std 829-1998 – IEEE Standard for Software Test Documentation. IEEE Standard.

A. Ilie et al. 2018. Test automation pyramid from theory to practice. In 22nd International Conference on Automation, Quality and Testing, Robotics (AQTR). 1–5.

ISO. 2013. ISO/IEC/IEEE 29119-2:2013 Software and systems engineering — Software testing — Part 2: Test processes. Technical Report. International Organization for Standardization.

ISO. 2021. ISO/IEC/IEEE 29119-3:2021 Software and systems engineering — Software testing — Part 3: Test documentation. Technical Report. International Organization for Standardization.

Philippe Kruchten, Robert L. Nord, and Ipek Ozkaya. 2012. Technical Debt: From Metaphor to Theory and Practice. IEEE Software 29, 6 (2012), 18–21.

Maurizio Leotta, Diego Clerissi, Filippo Ricca, and Cristiano Spadaro. 2013. Comparing the Maintainability of Selenium WebDriver Test Suites Employing Different Locators: A Case Study. In 1st International Workshop on Joining Academia and Industry Contributions to Testing Automation (ISSTA). 53–58.

Douglas H. Longo, Patricio F. Padilha, Ana B. Zaina, and Rosane G. M. Caetano. 2015. Investigating Automated Test Patterns in Erratic Tests by Considering Complex Objects. International Journal of Information Technology and Computer Science 7, 3 (2015), 54–59.

Qingzhou Luo, Farah Hariri, Lamyaa Eloussi, and Darko Marinov. 2014. An Empirical Analysis of Flaky Tests. In 22nd International Symposium on Foundations of Software Engineering (FSE). 643–653.

Steve McConnell. 2004. Code Complete: A Practical Handbook of Software Construction. Microsoft Press, Redmond, WA.

Gerard Meszaros. 2007. xUnit Test Patterns: Refactoring Test Code. Addison-Wesley Professional, Boston, MA.

Glenford J. Myers, Corey Sandler, and Tom Badgett. 2011. The Art of Software Testing. Wiley, Hoboken, NJ.

Sam Newman. 2015. Building Microservices: Designing Fine-Grained Systems. O’Reilly Media, Sebastopol, CA.

O. Parry, G. M. Kapfhammer, M. Hilton, and P. McMinn. 2021. A Survey of Flaky Tests. Transactions on Software Engineering and Methodology (TOSEM) 31, 1 (2021), 1–74.

Lalji Prasad, Rashmi Yadav, and Niti Vore. 2021. A Systematic Literature Review of Automated Software Testing Tool. In 3rd International Conference on Computing Informatics and Networks (ICCIN). 101–123.

Roger S. Pressman and Bruce R. Maxim. 2016. Software Engineering: A Practitioner’s Approach. McGraw-Hill, New York, NY.

Taryn Takebayashi, Anthony Peruma, Mohamed Wiem Mkaouer, and Christian D. Newman. 2023. An Exploratory Study on the Usage and Readability of Messages Within Assertion Methods of Test Cases. In 2nd InternationalWorkshop on Natural Language-Based Software Engineering (NLBSE). 32–39.

Hafiz Muhammad Umar. 2025. A Comparative Analysis of API Testing Approaches in Continuous Integration/Continuous Deployment (CI/CD) Pipelines in Cloud Based Systems. Technical Report. Lappeenranta–Lahti University of Technology.

Marco Tulio Valente. 2020. Engenharia de Software Moderna: Princípios e Práticas para Desenvolvimento de Software com Produtividade. Independente, Belo Horizonte, MG.

George Vegelien, Carolin Brandt, Bas Graaf, and Arie van Deursen. 2026. Addressing Test Flakiness: Practical Approaches in a Database-Reliant Industrial System. In 48th International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP).

Ham Vocke and Martin Fowler. 2018. The Practical Test Pyramid. Disponível em: [link].

Vahid Garousi Yusifoğlu, Yasaman Amannejad, and Aysu Betin Can. 2015. Software Test-Code Engineering: A Systematic Mapping. Information and Software Technology 58 (2015), 123–147.

Sai Zhang, Darioush Jalali, Jochen Wuttke, Kivanc Muslu, Wing Lam, Michael D. Ernst, and David Notkin. 2014. Empirically Revisiting the Test Independence Assumption. In 23rd International Symposium on Software Testing and Analysis (ISSTA). 385–396.
Publicado
08/09/2026
MORAIS, João Victor de; DURELLI, Rafael; TERRA, Ricardo. Uma Abordagem Unificada para Testes Automatizados em Arquiteturas Web Modernas. In: SIMPÓSIO BRASILEIRO DE TESTES DE SOFTWARE SISTEMÁTICO E AUTOMATIZADO (SAST), 11. , 2026, São Paulo/SP. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2026 . p. 69-78. DOI: https://doi.org/10.5753/sast.2026.31072.