Automação de testes – 7 passos para o sucesso!

Hoje vou apresentar para você leitor um pouco sobre a minha vivência em automação de testes, mais especificamente os primeiros passos para automação de testes funcionais.

Posso dizer que automatizar os testes funcionais nos dias de hoje é essencial para o sucesso e a qualidade de um produto de software, mas para implantar a automação de testes funcionais em uma organização é necessário um estudo e um planejamento para que o mesmo ocorra com sucesso.

Nos parágrafos seguintes estarei apresentando os primeiros passos que você deve analisar e estudar antes de mergulhar no mundo da automação de testes.

1° Passo – Apoio da liderança

liderança

O apoio da liderança é o primeiro passo para que a automação de testes ocorra em uma organização, pois sem ela você não terá forças nem recursos para dar inicio a um projeto de automação de testes. A implantação de testes automatizados requer o investimento de recursos financeiros e humanos, sendo estes obtidos apenas com o consenso da liderança.

A grande dúvida neste passo é: como conseguir a confiança e o apoio da liderança? Para isso você precisa ter um embasamento teórico sobre automação muito forte para conseguir demonstrar com números e estatísticas que a automação trará benefícios suficientemente grandes para tal investimento.

– Onde devo procurar esse conhecimento para convencer meus líderes?

As empresas que vendem ferramentas de automação de testes tem muito material que pode ser estudado e apresentando como benefícios da automação de testes funcionais aos seus líderes. Um exemplo é a Smartbear que, como ajuda aos profissionais da área de teste que querem implantar automação de testes na organização onde trabalham, disponibilizam um material contendo uma lista de benefícios que a implantação de uma ferramenta de automação pode trazer.

Posso listar alguns desses benefícios:

  • Acelerar os testes de um roteiro em vários navegadores
  • Retorno rápido de resultados de falhas no sistema, agilizando o processo de correção
  • Encontrar bugs mais cedo e aumentar a cobertura de testes
  • Executar testes mais rápido que um ser humano
  • Reutilização de testes

Existem muitos outros benefícios que a implantação da automação de testes pode nos trazer, mas isso posso aprofundar em um artigo exclusivo para isso. Continuar lendo

Processos, geradores de evidências!

Hoje vou abordar a implantação de processos e modelos de práticas de mercado como CMMI, MPS.BR, entre outros. Existem inúmeros modelos atualmente no mercado, uns mais robustos e outros mais enxutos, mas todos eles têm como objetivo melhorar o processo de desenvolvimento das empresas e como consequência aumentar a qualidade do produto final.

Para você modelar um processo não necessariamente precisa atender todas as práticas que o modelo exige, você pode usar um ou mais modelos apenas como base para desenhar um processo com as melhores práticas necessárias para sua organização.

Este é o momento onde você deve levantar a estrutura de negócio de sua organização e comparar com as práticas dos modelos para conseguir escolher o que trará mais benefício ao seu produto final.

Porém se você tem como objetivo da implantação deste processo certificar a sua organização em um modelo, você deve ter alguns cuidados ao escolher o modelo que deseja adquirir o selo de maturidade.

Neste caso busque o modelo que possui as práticas mais benéficas ao seu produto, ou dentro de um modelo estude as áreas de processo que são mais deficientes e que são primordiais para o seu negócio e implemente essas áreas.

Os modelos apresentam um conjunto de melhores práticas separadas por áreas de processo para servir de referência na modelagem dos processos das organizações.

Níveis de maturidade em modelos são associados a categorias e áreas de processo exclusivas para cada nível. É através da implantação das práticas e metas descritas para as áreas de processo associadas a um nível que capacita a organização a atingir este nível de maturidade do modelo. Sendo que os níveis são sequencias e dependentes, ou seja, para adquirir o selo de um nível, obrigatoriamente deve-se atender a todos os níveis anteriores. Continuar lendo

Testes ágeis com mapas mentais

Vou falar hoje de Testes ágeis, um assunto que está muito em alta na área de desenvolvimento de software e que muitas pessoas estão estudando sobre o assunto para tornar os testes mais ágeis ou para acoplar os testes a um processo de desenvolvimento ágil.

agile

Processos de teste se tornaram comuns com tanta concorrência entre empresas e clientes cada vez mais exigentes. Estes processos normalmente acompanham processos de desenvolvimento baseados em modelos tradicionais e pesados, gerando assim um processo de testes tradicional e pesado também.

O que tem evoluído muito e que também tem ganhado espaço nas empresas de desenvolvimento de software são os processos e metodologias ágeis. Estes têm como princípio quebrar as atividades em partes menores com respostas mais rápidas e entregas em períodos mais curtos.

Para acompanhar essa onda de desenvolvimento em processos ágeis os profissionais da área de teste estão em busca de métodos para tornar os testes mais ágeis com respostas mais rápidas, porém que consigam manter a mesma qualidade dos processos de testes tradicionais.

Continuar lendo

Allpairs – Gerador de casos de testes

Pairwise é um método conhecido na comunidade de testes por diminuir consideravelmente a quantidade de testes quando se necessita testar a combinação de muitas variáveis. Basicamente é feita a combinação por pares das variáveis e removidas as situações que se repetem.

Fazer essas combinações quando se tem uma pequena quantidade de variáveis até é viável manualmente; porém conforme a quantidade de variáveis aumenta, a quantidade de testes necessários também aumenta geometricamente.

James Marcus Bach

Pensando em otimizar esse processo de levantamento de ideias      baseadas no método pairwise, a Satisfice Inc, empresa de James Marcus Bach (foto), desenvolveu uma ferramenta chamada AllPairs, a qual gera casos de teste utilizando o método pairwise baseado nas variáveis informadas pelo usuário.

Quando utilizado o método pairwise combinam-se os valores informados de cada variável, fazendo com que a quantidade de casos de teste seja o produto das quantidades de valores de cada variável, ou seja, se houver uma situação que tenha 10 variáveis com 2 valores possíveis cada, isso vai resultar em 1024 casos de teste diferentes.

Ao utilizar a ferramenta AllPairs, ela vai gerar uma tabela com todas as combinações pareadas possíveis e também outra tabela com as combinações de pares mais prováveis que possam ocorrer, diminuindo – neste caso – de 1024 para apenas 10 combinações de variáveis.

Continuar lendo