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

Post on 19-Nov-2014

3.646 views 4 download

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ê?

www.testadores.com

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

1

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

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

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

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

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

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

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

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

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

10

Testes Manuais x Automação de Testes

11

Candidatos a automação

12

Não recomendados para automação

13

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

Testar é difícil

15

Percepção dos teste

16

Finalidade dos Testes

17

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

Isso é um Elefante?

19

Isso é um teste?

20

Comportamento esperado

21

Modelo V

22

Quadrantes de Marick

23

Pirâmide de Cohn

24

Pirâmide alimentar

25

Pirâmide frágil

26

Fluxo de problemas

27

Só vemos a casca

28

… mas não o interior

29

DINÂMICA

30

31

32

Não temos um modelo consensual

para testes

33

Só acreditamos vendo

34

Todos falamos a mesma língua

35

Inspeções subsituem testes

36

Testes substituem inspeções

37

Automatizar tudo

38

Precisamos automatizar tudo

39

A maioria dos defeitos é

encontrado por testes manuais

40

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

41

Desenvolvedores sempre testam seu

código

42

Nossa responsabilidade para na entrega

43

Desenvolvedores tem malícia para

testes

44

Não consigo testar concorrência

45

Só da pra testar utilizando a interface

do usuário

46

Integração contínua compensa

47