Automatização de Testes de Software

Entregar softwares com qualidade e em menor tempo é o objetivo das empresas competitivas. Para maior qualidade, é necessário investimento em Quality Assurance, assim o produto tem um maior valor agregado, e consequentemente maior destaque no mercado.
Testes automatizados, garantem entregas mais rápidas e seguras. Assim, quanto maior a cobertura dos testes realizados, maior a garantia dos cenários validados, menor a quantidade de erros encontrados pelos usuários finais e maior a satisfação do cliente.
A automatização não é feita para substituir os testes manuais e ambos se complementam, pois enquanto testes documentados são executados automaticamente, o Analista de Testes ganha mais tempo para explorar e validar outros requisitos importantes para a qualidade do sistema.


Por que automatizar?

  • Automatizar testes manuais reduz o trabalho repetitivo, eliminando a sensação de retrabalho.
  • Casos de testes já validados em versões anteriores podem sofrer impacto com alguma alteração feita no sistema.
  • Testes automáticos garantem a cobertura das funcionalidades previamente validadas.
  • Testes automáticos são testes documentados e podem ser utilizados para conhecer regras do sistema ou mesmo para visualizar quais casos e cenários de teste já estão cobertos e que não precisam ser refeitos manualmente.
  • Resultados dos testes podem ser utilizados em relatórios para o cliente final, garantindo a cobertura das funcionalidades testadas.
  • Possibilita que um conjunto maior de cenários e casos de testes sejam executados em menor tempo, facilitando e agilizando a entrega de versões do sistema.
  • Disponibiliza ao testador a possibilidade de rever os cenários documentados e verificar se testes importantes são esquecidos.
  • Melhora a qualidade final do produto, pois a base de testes tende a crescer, tanto em relação a quantidade de cenários cobertos quanto a qualidade dos testes executados.
  • Podem ser utilizados para validar o mesmo sistema em diferentes navegadores.

CTA-ebook-transformação-digital

Dificuldades no processo de automatização

A implantação de testes automáticos não é uma tarefa tão simples. Automatizar requer paciência, principalmente na fase inicial em que os testadores estão conhecendo o sistema, regras e aprendendo a diversidade de cenários que um sistema pode ter.

Normalmente as dificuldades encontradas pelos testadores são:

  • Padronização de boas práticas para desenvolvimento dos testes, visando a manutenção e melhoria dos cenários;
  • Priorização de casos e cenários de testes, pois nem sempre é possível automatizar tudo;
  • Resultados dos testes são imprecisos;
  • Testes quebrando facilmente, quando ocorrem mudanças rotineiras no sistema, causando manutenção frequente.

Picture1

O que se deve ou não automatizar?

O que automatizar?

  • Testes de regressão;
  • Tarefas repetitivas;
  • Funcionalidades críticas.

O que não automatizar?

  • Funcionalidades poucos usadas;
  • Funcionalidades que exigem inspeção visual;
  • Funcionalidades novas.

 

Principais ferramentas utilizadas

  • Selenium WebDriver
  • Selenium IDE
  • Sikuli
  • BadBoy

 

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>