Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo

Nesse artigo pretende-se demonstrar alguns aspectos que afetam os testes em processos ágeis e que, se tratados com antecedência, aumentam a chance de sucesso dos testes nesses ambientes. Será visto ainda como resolver alguns problemas que surgem devido à adoção desses processos e como se modificará o papel e o relacionamento dos testadores com o restante da equipe.


Para que serve

A estratégia de testes utilizada em um ambiente ágil deve ser diferente da estratégia em um ambiente que segue um processo tradicional, o que torna necessário, antes da adoção de um processo ágil, que se pense em como resolver determinados problemas relacionados aos testes nesse ambiente.

Em que situação o tema útil

Como nos próximos anos os profissionais de teste estarão sob o aumento de pressão para conseguirem testar melhor e mais rápido, a resolução de problemas inerentes aos testes ágeis é útil em equipes que pretendem vir a utilizar um desses processos, visto que isso aumenta a probabilidade de sucesso dos testes nesses ambientes.

Em fevereiro de 2001, 17 desenvolvedores de software se reuniram em uma estação de esqui, nos EUA, com o objetivo de conversar, comer, relaxar e trocar ideias em comum. Durante as conversas, foram discutidas alternativas para melhorar a produtividade dos projetos de desenvolvimento de software. Para isso, basearam-se nos anos de experiência no desenvolvimento de software de todos os participantes do encontro. Embora cada um dos envolvidos tenha trabalhado em projetos que seguiam processos e práticas diferentes, um conjunto de princípios parecia ter sido respeitado nos projetos que tiveram sucesso.

Com base nos princípios em comum, foi criado o Manifesto para o Desenvolvimento Ágil de Software, que definiu os quatro princípios básicos que os métodos ágeis deveriam valorizar. São eles:

• Indivíduos e iterações entre eles, ao invés de processos e ferramentas;

• Software funcionando ao invés de documentação compreensiva e detalhada;

• Colaboração com os clientes ao invés de negociação de contratos;

• Adaptação às mudanças ao invés de seguir o plano inicial.

Desde então, cada vez mais organizações começaram a adotar metodologias ágeis no desenvolvimento de software. Entretanto, segundo Stuart Reid, na realidade existem poucas empresas que utilizam processos realmente ágeis e que seguem todos os princípios do manifesto. Na prática, o termo ágil tem sido aplicado a qualquer projeto de desenvolvimento interativo cujas iterações não durem mais do que quatro semanas.

Segundo Joachim Herschmann, em seu artigo “The Future of Testing - How Testing and Technology will Change”, não há dúvidas que nos próximos anos profissionais de teste, qualidade e organizações que desenvolvem software como um todo, estarão sob o aumento de pressão para conseguirem testar melhor e mais rápido. A utilização de processos ágeis é uma tentativa de conseguir isso.

A aplicação das metodologias ágeis não é, contudo, tão fácil quanto explicada nos livros e nem tão difícil quanto pregam alguns adeptos das metodologias tradicionais. Para uma empresa aplicar um processo ágil, é necessário fazer diversas modificações no processo de desenvolvimento e na cultura da empresa. Em alguns casos, como em uma empresa que segue um processo muito bem definido, essas modificações podem ser mais profundas. Porém, se bem planejadas, podem ser realizadas sem grandes traumas.

É muito comum empresas que utilizam processos ágeis darem relatos demonstrando o quão boas são essas metodologias. No entanto, a maioria dos relatos sobre a utilização das metodologias ágeis não entram em detalhes sobre como funcionam os testes nesses processos. Apesar disso, qualquer um que esteja envolvido em projetos ágeis percebe facilmente que as abordagens tradicionais de teste não funcionam bem nesses casos.

Em um mundo cada vez mais competitivo, a qualidade torna-se a cada dia mais importante, tornando os testes uma atividade crucial no ciclo de vida do desenvolvimento de software. Isso aumenta a necessidade de treinamento da equipe para que todos estejam mais qualificados. Com a utilização cada vez maior dos processos ágeis, é importante que os profissionais de teste sejam mais qualificados e saibam como trabalhar nesses processos.

No que diz respeito aos testes, antes de implantar um processo ágil, é necessário que determinadas questões sejam respondidas para que os testes ocorram com sucesso. Nas próximas seções essas questões serão levantadas e discutidas, e será demonstrado como as pessoas que trabalham com desenvolvimento de software devem modificar a forma como pensam sobre o trabalho dos profissionais de qualidade e teste nas metodologias ágeis.

...
Quer ler esse conteúdo completo? Tenha acesso completo