snapshot tests: estratégia de agile testing para antecipação de falhas

Post on 29-Nov-2014

123 Views

Category:

Software

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

A adoção de metodologia de desenvolvimento ágil não implica no abandono das estratégias de testes tradicionais. Entretanto, as mesmas devem ser repensadas para que se adequem a um time ágil. Uma abordagem a ser utilizada são os snapshot tests, que são testes parciais do produto a partir de um build gerado pelo testador com o intuito de validar pequenas features à medida que as mesmas vão sendo concluídas. Com isso, é possível antecipar falhas e evitar a burocracia dos testes tradicionais. Essa abordagem tem produzido resultados satisfatórios nos times da FPF Tech.

TRANSCRIPT

Instituto de P&D localizado

em Manaus (hardware e

software)

Treinamentos Constantes

Ambiente Descontraído

Criatividade e melhoria

contínua de nossos

processos

Surgiu a ideia de melhorar

nosso processo de

desenvolvimento com

Snapshot Tests

Mas como é nosso processo

de desenvolvimento?

Scrum

Temos 30 times que

utilizam Scrum

Definition of Done (DoD)

Todo Sprint Backlog deve ter sido desenvolvido e testado.

Todas as falhas identificadas durante o Sprint devem ter sido

corrigidas e verificadas. E todas as metas de qualidade de

código devem ter sido atingidas.

Qualidade

de Código

Codificação

TestesVerificação

Após a conclusão de um conjunto

de funcionalidades, o time gera

uma versão para testes

Testes de Release

Lições aprendidas: não dava

tempo de corrigir e verificar

as falhas

Time tinha a sensação de “nadar, nadar e morrer na praia”

Esse tipo de problema faz parte da realidade dos times de

vocês?

Snapshot Tests

Não precisar aguardar uma release para iniciar os testes

Estratégia batizada de “Snapshot Tests”

O termo “Snapshot” remete ao Maven

Mas não é uma ideia atrelada a uma ferramenta

Tem mais a ver com

integração do time

Do que com

ferramentas

Snapshot Tests

Falhas encontradas são imediatamente comunicadas

O que é preciso para que

essa estratégia funcione?

Todo time fisicamente

próximo

Time deve compreender a

importância da estratégia

Boa comunicação do time

é fundamental

Releases não deixam de existir

Mas então qual a

vantagem?

Antecipação de falhas

Problema detectado o quanto antes

Redução de Falhas nos Testes de Release

Redução do Tempo de Registro das Falhas

Redução do Tempo de Registro das Falhas

Redução do Tempo de Registro das Falhas

61 falhas * 8 min = 488 min = >8 horas

Redução no Tempo de Reporte de Falhas

48 falhas * 2 min = 96 min = >1.5 horas

13 falhas * 8 min = 104 min = < 2 horas

Redução no Tempo de Reporte de Falhas

Se convertermos esse

tempo em dinheiro…

220h -> R$ 5.000,00

8 h -> ?

Se convertermos esse

tempo em dinheiro…

220h -> R$ 5.000,00

3,5 h -> ?

220h -> R$ 5.000,00

8 h -> R$ 181,82

Se convertermos esse

tempo em dinheiro…

220h -> R$ 5.000,00

3,5 h -> R$ 79,55

R$ 5454,60

E para 30 testadores…

R$ 2386,50

Automação de testes

Especificação de

novos cenários

“Educação” do

desenvolvedor

para testar

Muito Obrigada!

Carla Oran

coran@fpf.br

top related