O documento descreve uma palestra sobre a combinação de automação de testes tradicional com BDD (Desenvolvimento Orientado por Comportamento). A palestra irá explicar como o BDD aborda os desafios da automação de testes tradicional ao descrever comportamentos em linguagem natural e transformá-los em testes automatizados usando ferramentas como JBehave. Além disso, será apresentada a solução BDD4TC para integrar testes de aceitação BDD com a automação de interfaces gráficas tradicionais.
Workshop - Modelo de negócios no e-commerce: Diferenciais e estratégias
Mesclando automação de teste tradicional com BDD
1. Seminário de teste de software – 2012
http://www.testday.com.br/
Palestra
Mesclando
automação
de
teste
tradicional
com
BDD
Cris%ano
Caetano
-‐
Qualister
2. Direitos autorais
Importante er
produção de qualqu
proibida a cópia e re
– É resentação incluindo,
parte do conteúdo desta ap
, imagens, gráficos e
mas não limitado a, textos
é protegida pelas leis
tabela s. Esta apresentação no
opriedade de Cristia
de Copyright e são pr e Treinamento
Caetano e Qualister Consultoria
LTDA.
r, copiar, guardar em
– Não é permitido modifica
ugar, vender ou
banco de dados público, al
apresentação,
republicar qualquer parte desta
o explícita do autor.
sem prévia permissã
o deste material,
– Quando ho uver permissão de us e
bibliográfica conform
é ob rigatória a referência
as normas vigentes.
www.qualister.com.br
4. Tópico
Mesclando
automação de teste
tradicional com BDD
www.qualister.com.br
5. BDD
• Dan North, criador do BDD (Desenvolvimento dirigido por
comportamento) percebeu diversas dificuldades na aplicação de
testes unitários via TDD, tais como:
– Saber por onde começar;
– O que testar e o que não testar;
– Até onde testar;
– Entender porque um teste falha;
– Como chamar os testes.
Testes descritos em nomes de métodos
TestComprarPassagemPromocionalSomenteIdaParaUmAdultoVooDisponivel
TestComprarPassagemPromocionalIdaEVoltaParaUmAdultoVooDisponivel
TestComprarPassagemFlexSomenteIdaParaUmAdultoVooDisponivel
www.qualister.com.br
6. BDD
• O BDD é uma técnica de desenvolvimento de
software, onde os programadores desenvolvem o
software guiados por comportamentos.
• Os comportamentos são descritos em uma
linguagem natural similar a linguagem do negócio
e deve ser facilmente entendida pelo cliente e
demais membros do time.
www.qualister.com.br
7. BDD
• Um comportamento é descrito por uma estória e por testes de
aceitação conforme o modelo propoposto por Dan North
www.qualister.com.br
8. BDD
Cenários
de
uso
Exemplos
Expecta>vas
de
uso
Assunções
Limitações
Linguagem Ubíqua
Premissas
Restrições
www.qualister.com.br
9. BDD
• Várias ferramentas auxiliam o programador a transformar os comportamentos
em verificações automatizadas
Código
API
Interface
gráfica
Codigo
de
suporte
“fixture”
que
Comportamento
encapsula
a
em
linguagem
implementação
da
Etc...
natural
ação
descrita
em
linguagem
natural
www.qualister.com.br
15. Automação de testes tradicional
• O foco da automação é a Interface Gráfica
• É usada a abordagem Record / Playback
• São gerados scripts em linguagens proprietárias
• Os scripts gerados não são amigáveis
www.qualister.com.br
16. Automação de testes tradicional
• O problema:
BDD
+
Automação de testes tradicional
www.qualister.com.br
17. Automação de testes tradicional
• A solução:
Ferramenta
tradicional
de
automação
de
testes
Testes
de
aceitação
em
linguagem
Interface
Gráfica
do
natural
na
filosofia
sistema
BDD
www.qualister.com.br