Os três pilares dos testes e qualidade Agile
Estes três pilares constituem um plano de qualidade equilibrado. (por Bob Galen)
1. Desenvolvimento & Automa(tiza)ção de Testes
É a vertente tecnológica dos testes e qualidade. Inclui ferramentas e preparação/programação das ferramentas, execução dos testes automáticos, integração contínua, práticas técnicas de XP Extreme Programming e suporte a ferramentas de colaboração de ALM Application Lifecycle Management. Destaca a pirâmide Agile de testes automáticos de Mike Cohn como estratégia para o desenvolvimento da automa(tiza)ção na maioria dos contextos Agile.
Muitas vezes as organizações dedicam-se primeiro aos aspectos técnicos com ferramentas que ajudem a resolver os desafios técnicos. Este pilar deve ser visto como fundacional - os outros dois pilares são construídos sobre este.
Este pilar inclui testes, ferramentas e automa(tiza)ção, mas também todas as ferramentas relacionadas com o desenvolvimento de um produto numa organização Agile. É ele que fornece a maior parte da cola que une ferramentas e automa(tiza)ção conduzindo à eficácia do trabalho no global e à melhoria da qualidade.
2. Testes de Software
Este pilar, vocacionado para testers, está virado às práticas de testes sólidas. Para isso, ele assenta na experiência em testes dos membros da equipa, competências, técnicas e uso de ferramentas. É aqui que as equipas ágeis deixam uma visão mais superficial dos testes de software (testdriven development, acceptance test-driven development, developer-based testing) para passarem a ter uma visão mais holística da qualidade. Os testes de software incluem testes exploratórios, funcionais e não-funcionais. Este pilar destaca o teste exploratório uma vez tratar-se de uma técnica subutilizada que traz um valor excepcional em contextos ágeis. Dado que muitas vezes as equipas ágeis se esquecem dos testes não-funcionais, este pilar traz consigo um lembrete para que sejam consideradas todas as áreas de testes. É aqui que é definida a estratégia de testes, planeamento e actividades de governance, além do test reporting. O pilar dos testes de software fornece uma framework para testes eficazes de forma profissional, mais aprofundada e amplamente aplicada em contextos ágeis.3. Práticas de Equipas Multidisciplinares
Este pilar está focado na colaboração entre equipas multidisciplinares, standards a seguir pelas equipas, atitudes da qualidade e em implementar as coisas correctamente. Considera a área das competências comportamentais que dá as orientações de como cada equipa deve trabalhar. Este pilar inclui as revisões de código e da documentação, que devem ser praticadas e valorizadas. Estas actividades englobam as associações entre membros das equipas, revisões formais da arquitectura, revisões do design, revisões do código e revisões dos casos de teste. As melhores equipas de testes fazem uma inspecção rigorosa seguindo a definição de "Pronto" estabelecida pela equipa. Para que se entenda o que "Pronto" significa realmente, têm de ser estabelecidos os constrangimentos, as convenções e os acordos necessários entre as várias disciplinas.Ideias Transversais
Mais do que em cada um dos pilares, o verdadeiro valor desta framework está nos valores transversais.O primeiro pilar implica um equilíbrio nas estratégias de automa(tiza)ção, por forma a que o trabalho em BDD Behavior-Driven Development seja compensado pelo esforço em testes unitários e automa(tiza)ção dos testes de UI User Interface. Isto implica que os testes de aceitação sejam dados ao cliente através da user story.
No segundo pilar subentende-se a existência de standards para testes de software. Neste caso, existem normas para escrever test stories ou cenários e critérios de aceitação. Exemplos de cenários bem escritos que levaram à automa(tiza)ção são também importantes. Assim são ligados o pilar um e dois.
O terceiro pilar evita que a colaboração com o cliente seja descorada. Independente da automa(tiza)ção, a equipa estará envolvida em conversas de 3 amigos que trazem valor funcional da colaboração entre a equipa e o cliente. É também importante ter cenários bem definidos antes de escrever os scripts de BDD.
Os três pilares não são garantia de um pensamento integrado ao implementar práticas de qualidade e testes em contextos Agile. São, no entanto, um guia para a ligação entre conceitos transversais.
vide
Browser Automation
SpecFlow
fonte: Improve Agile Quality—Three Pillars at a Time
Licença CC BY-SA 4.0
Silvia Pinhão Lopes, 1.3.16
Sem comentários: