Uma das maiores dificuldades que observo no meu time de scrum para termos sucesso na automação de scripts de teste é o fato de a equipe como um todo não conseguir definir os cenários de teste que precisam ser executados. Uma sugestão que dei ao time é que eu, como especialista em testes, faça o mapeamento dos cenários e que o time contribua também nesse mapeamento. A partir daí conseguiremos gravar grande parte dos cenários de teste da aplicação.
Um outro ponto que vejo é conseguirmos automatizar scripts diariamente. Imaginem a situação em que uma determinada funcionalidade é desenvolvida e que todos os cenários de teste previstos para ela foram automatizados com sucesso. A dificuldade nesse caso é que, quando ocorrem os testes manuais dessa mesma funcionalidade, descobre-se outros cenários de teste alternativos e bugs são encontrados. Porque a dificuldade ? Porque no momento do teste manual dessa funcionalidade, já está ocorrendo o desenvolvimento de outra funcionalidade e não temos a cultura de voltar a estória para gravar os novos cenários encontrados.
Conheço times em que o próprio P.O., só dá seu accepted na estória quando visualiza a estória automatizada. Para ele, é uma garantia maior de que o produto entregue tem qualidade.
Uma última questão que é importante levantar neste tópico é como o analista de testes consegue “controlar” os scripts que estão sendo gravados no meio de um time com vários desenvolvedores que automatizam. Como saber se todos os cenários planejados foram gravados, em que momento isso pode ser aceito ? Há algum tempo já tenho pensado nisso e uma sugestão minha é que, assim que qualquer integrante da equipe termine de gravar algum bloco de scripts, que o analista de testes seja informado para dar seu “aceite”. Daí pra frente, esses blocos de scripts que foram aceitos são automaticamente utilizados como scripts de regressão.
Considero que para termos um controle da automação e até que isso não entre no sangue dos times, apenas homologar as estórias que estiverem com todos os scripts possíveis automatizados.
Martha, concordo com vc.
automatizar testes é parte do trabalho de desenvolvimento do produto e não um “plus” como muita gente acha. Sinal de profissionalismo.
isso demanda tempo e esforço e portanto deve ser planejado no início da iteração como qualqur outra atividade, revisado pelo time todo antes do demo para o cliente, e usado como parte do critério de aceite para entrega.
Martha, você foi perfeita. Acho que os desenvolvedores de forma geral ainda são bem imaturos quanto aos testes. Não tem essa capacitadade de visualizar esses cenários. Espero que isso melhore com o tempo.
[]s
emerleite