Precisa testar? - Parte 1

17
Testando FrontEnd Para parar de perder tempo!

Transcript of Precisa testar? - Parte 1

Testando FrontEndPara parar de perder tempo!

Cronograma

- Precisa testar?

- Conceitos de teste

- CasperJS e PhantomJS

- Instalando

- Exemplo

Precisa testar?

Esforço para identificar e corrigir

“Encontrar e corrigir um problema de software após a entrega é muitas vezes, 100 vezes mais caro do que encontrar e corrigir durante a fase de design e requisitos.”

Esforço para identificar e corrigir

● Identificar e corrigir problemas graves depois da entrega pode ser 100 vezes mais custoso que no desenvolvimento.

● Identificar e corrigir problemas não graves depois da entrega pode ser duas vezes mais custoso que no desenvolvimento.

Quantidade de retrabalho a qual é possível evitar

“Cerca de 40-50% do esforço num projeto de software é gasto em retrabalho, o qual é possível evitar.”

Quantidade de retrabalho a qual é possível evitar

● Uma grande quantidade de esforço num projeto de software é gasto com retrabalho que poderia ser evitado.

● A quantidade de esforço desperdiçado diminui com maturidade dos processos.

Defeitos causando retrabalho

“Cerca de 80% de retrabalho evitável vem de 20% dos defeitos.”

Defeitos causando retrabalho

● A maior parte do retrabalho evitável vem de um pequeno número de defeitos de software, onde retrabalho evitável é definido como o trabalho feito para mitigar os efeitos de erros ou para melhorar desempenho do sistema.

● Alguns retrabalhos são simplesmente inevitáveis, por exemplo, o trabalho decorrente da adaptação, preventiva, ou alterações solicitadas pelo usuário.

● Os defeitos que causam grandes quantidades de retrabalho são provavelmente aqueles que são "quebram" a arquitetura ou que são considerados "inapropriados" tarde no processo de desenvolvimento.

Review de código

“Análise por pares pode pegar 60% dos defeitos.”

Review de código

● Revisão de código pode pegar mais de metade dos erros de um produto, independente do nível de maturidade da organização ou da fase que foi aplicado.

Conceitos de teste

Teste não funcional

O Teste não funcional é o tipo de teste feito em relação aos requisitos não funcionais.

● Disponibilidade● Compatibilidade● Cumprimento dos requisitos● Localização / Internacionalização● Recovery● Segurança● Escabilidade● Stress● Performance● ...

Teste funcional

É o teste que verifica se as funcionalidades básicas estão de acordo com as especificações, funcionalidades e comportamentos esperados.

O que um teste funcional deve conter?

1- Está funcionando como deveria?

2- Não está funcionando como não deveria?

3- Não está fazendo o que não era intencional fazer?

Etapas para preparação de um teste funcional

1- Preparar dados baseados nas especificações;

2- Requisitos de negócio são input para testes funcionais;

3- Baseado no funcionamento definir resultado esperado;

4- Execução dos casos de teste;

5- Observar resultados atuais e esperados;

Tipos de testes funcionais

● Unit Testing● Smoke testing● Sanity testing● Integration Testing● Interface Testing● System Testing● Regression Testing● UAT