Princípios universais em teste de software

Princípios universais sobre teste de software

https://www.thoughtworks.com/insights/blog/testing/seven-guiding-principles-testing

A autora, Gayathri Mohan, elenca princípios universais sobre testes na indústria do software. Ela é escritora do livro Full Stack Testing. Não é sobre técnicas e ferramentas, mas sobre uma maneira de pensar. Segue um breve resumo:

  • O usuário final é seu melhor amigo. Geralmente estamos focados em requisitos de negócio e implementações técnicas, alguém precisa sustentar as necessidades do ponto de vista do usuário final;
  • Testes no nível micro e macro. Os testes precisam ocorrer desde o nível pequeno, os testes unitários ou de integração até os macro testes funcionais;
  • Feedback o mais rápido possível. Quanto antes se descobre um erro melhor. Práticas como pirâmide de testes e execução de testes de integração na maquina de desenvolvimento vão ajudar a localizar algo que talvez somente surja em produção;
  • Feedback contínuo. Manter o processo de testagem ocorrendo com frequência é fundamental, e de novo, a pirâmide de testes é citada como forma de lidar com as questões de performance;
  • Quantifique qualidade. Ter métricas de medição tanto do número de bugs como sobre a própria base de código são úteis. Ela cita algumas no texto principal.
  • Comunicação e colaboração. O trabalho de garantia de qualidade exige conhecimento em áreas técnicas e de negócio. A comunicação pode ser feita através de cerimônias em processos tradicionais, mas bem documentada em artefatos multimídia;
  • Prevenção de erro é prioritária à detecção de erro: Falhas em software podem evoluir muito rapidamente para mudanças arquiteturais importantes não vistas antes pela equipe. Isso aumenta muito o custo do projeto.