Agilidade com Ferramentas de Automação - Como e por quê?

47
www.testadores.com Agilidade com Ferramentas de Automação Como e por quê ? 1

description

Apresentação no TDC - The Developers Conference 2010 em São Paulo dia 20/08/2010 sobre Agile e Ferramentas apresentada por Jorge Diz e Elias Nogueira

Transcript of Agilidade com Ferramentas de Automação - Como e por quê?

Page 1: Agilidade com Ferramentas de Automação - Como e por quê?

www.testadores.com

Agilidade com Ferramentas de Automação Como e por quê ?

1

Page 2: Agilidade com Ferramentas de Automação - Como e por quê?

Jorge Diz

• Mestre e bacharel pela UNICAMP• Programando desde 1983• Testando desde 1994• Javeiro• Consultor: teste e metodologia• Criador da Academia de Teste da Globalcode• @JorgeDiz

2

Page 3: Agilidade com Ferramentas de Automação - Como e por quê?

Elias Nogueira

• Arquiteto de Teste de Software• Instrutor de Teste na Iterays• Consultor em Automação de Teste• CSTE – Certified Softwate Tester• http://sembugs.blogspot.com• @eliasnogueira

3

Page 4: Agilidade com Ferramentas de Automação - Como e por quê?

Fórmula para automação

• Compre uma ferramenta muito cara para automação e execução dos testes

• Escolha um monte de Casos de Teste do seu sistema

• Abra vagas de automação para montar um time para automatizar cada Caso de Teste

• Construa uma biblioteca e um framework de automação

• Vá corrigindo os bugs da automação

4

Page 5: Agilidade com Ferramentas de Automação - Como e por quê?

Fórmula para automação

• Compre uma ferramenta muito cara para automação e execução dos testes

• Escolha um monte de Casos de Teste do seu sistema

• Abra vagas de automação para montar um time para automatizar cada Caso de Teste

• Construa uma biblioteca e um framework de automação

• Vá corrigindo os bugs da automação

Isso pode ser feito de o seu produto é muito fácil de testar e não possui mudanças com freqüência.

Essa é a descrição do seu produto?

5

Page 6: Agilidade com Ferramentas de Automação - Como e por quê?

O que é Automação de Teste

"O propósito da automação de testes pode ser resumidamente descrito

como a aplicação de estratégias e ferramentas tendo em vista a

redução do envolvimento humano em atividades manuais repetitivas."

Cem Kaner, Autor do livro "Lessons Learned In Software Testing"

6

Page 7: Agilidade com Ferramentas de Automação - Como e por quê?

Automação de Teste é…

• Uso de ferramentas para ajudar/suportar o teste

• Automação em ambiente ágil é aplicação dos princípios ágeis para automatizar o teste

7

Page 8: Agilidade com Ferramentas de Automação - Como e por quê?

Agile Test Automation

• Suporte de ferramentas para todos os aspectos de teste, não somente execução

• Organizado para entregas de curto prazo• Foco em ‘test driven’, não em ‘defect driven’• Torna o teste como parte do ‘done’

8

Page 9: Agilidade com Ferramentas de Automação - Como e por quê?

Falsas expectativas

Uma ferramenta de testes

automatizados é a solução de

todos os problemas de

qualidade.

Testabili-oquê?Você quer dizer que para criar

testes automatizados será

necessário modificar o sistema?

Testes automatizados é

moleza. Basta gravar a digitação

e os cliques do mouse e depois

executar o script.

9

Page 10: Agilidade com Ferramentas de Automação - Como e por quê?

A ferramenta não é a solução de todos os problemas

10

Page 11: Agilidade com Ferramentas de Automação - Como e por quê?

Testes Manuais x Automação de Testes

11

Page 12: Agilidade com Ferramentas de Automação - Como e por quê?

Candidatos a automação

12

Page 13: Agilidade com Ferramentas de Automação - Como e por quê?

Não recomendados para automação

13

Page 14: Agilidade com Ferramentas de Automação - Como e por quê?

Ferramentas Open Source

• Principais PlayersSelenium – Testes Automatizados para Web por meios Funcionais e de Aceitação. http://seleniumhq.org

JMeter – Testes de performance em aplicações de diferentes tipo de servidores (HTTP/HTTPS, SOAP, JMS, etc..).http://jakarta.apache.org/jmeter

Watir – Testes Automatizados para Web escritos na linguagem Ruby. Existem derivações em .Net (WatN) e Java (WatJ)http://watir.com

FitNesse – Web server, Wiki e ferramenta de Teste Automatizado para suportar Testes de Aceitaçãohttp://jakarta.apache.org/jmeter/

14

Page 15: Agilidade com Ferramentas de Automação - Como e por quê?

Testar é difícil

15

Page 16: Agilidade com Ferramentas de Automação - Como e por quê?

Percepção dos teste

16

Page 17: Agilidade com Ferramentas de Automação - Como e por quê?

Finalidade dos Testes

17

Page 18: Agilidade com Ferramentas de Automação - Como e por quê?

Finalidade dos Testes

• Encontrar defeitos• Definir comportamento esperado• Monitoramento em Produção• Conformidade com contratos• Riscos (mitigação/avaliação)• Métricas de Qualidade

18

Page 19: Agilidade com Ferramentas de Automação - Como e por quê?

Isso é um Elefante?

19

Page 20: Agilidade com Ferramentas de Automação - Como e por quê?

Isso é um teste?

20

Page 21: Agilidade com Ferramentas de Automação - Como e por quê?

Comportamento esperado

21

Page 22: Agilidade com Ferramentas de Automação - Como e por quê?

Modelo V

22

Page 23: Agilidade com Ferramentas de Automação - Como e por quê?

Quadrantes de Marick

23

Page 24: Agilidade com Ferramentas de Automação - Como e por quê?

Pirâmide de Cohn

24

Page 25: Agilidade com Ferramentas de Automação - Como e por quê?

Pirâmide alimentar

25

Page 26: Agilidade com Ferramentas de Automação - Como e por quê?

Pirâmide frágil

26

Page 27: Agilidade com Ferramentas de Automação - Como e por quê?

Fluxo de problemas

27

Page 28: Agilidade com Ferramentas de Automação - Como e por quê?

Só vemos a casca

28

Page 29: Agilidade com Ferramentas de Automação - Como e por quê?

… mas não o interior

29

Page 30: Agilidade com Ferramentas de Automação - Como e por quê?

DINÂMICA

30

Page 31: Agilidade com Ferramentas de Automação - Como e por quê?

31

Page 32: Agilidade com Ferramentas de Automação - Como e por quê?

32

Page 33: Agilidade com Ferramentas de Automação - Como e por quê?

Não temos um modelo consensual

para testes

33

Page 34: Agilidade com Ferramentas de Automação - Como e por quê?

Só acreditamos vendo

34

Page 35: Agilidade com Ferramentas de Automação - Como e por quê?

Todos falamos a mesma língua

35

Page 36: Agilidade com Ferramentas de Automação - Como e por quê?

Inspeções subsituem testes

36

Page 37: Agilidade com Ferramentas de Automação - Como e por quê?

Testes substituem inspeções

37

Page 38: Agilidade com Ferramentas de Automação - Como e por quê?

Automatizar tudo

38

Page 39: Agilidade com Ferramentas de Automação - Como e por quê?

Precisamos automatizar tudo

39

Page 40: Agilidade com Ferramentas de Automação - Como e por quê?

A maioria dos defeitos é

encontrado por testes manuais

40

Page 41: Agilidade com Ferramentas de Automação - Como e por quê?

É mais fácil encontrar defeitos que justificativas para corrigí-los

41

Page 42: Agilidade com Ferramentas de Automação - Como e por quê?

Desenvolvedores sempre testam seu

código

42

Page 43: Agilidade com Ferramentas de Automação - Como e por quê?

Nossa responsabilidade para na entrega

43

Page 44: Agilidade com Ferramentas de Automação - Como e por quê?

Desenvolvedores tem malícia para

testes

44

Page 45: Agilidade com Ferramentas de Automação - Como e por quê?

Não consigo testar concorrência

45

Page 46: Agilidade com Ferramentas de Automação - Como e por quê?

Só da pra testar utilizando a interface

do usuário

46

Page 47: Agilidade com Ferramentas de Automação - Como e por quê?

Integração contínua compensa

47