Mini curso Testes de software ágil leves enxutos Computer on the Beach 2013
-
Upload
cristiano-caetano -
Category
Technology
-
view
487 -
download
3
description
Transcript of Mini curso Testes de software ágil leves enxutos Computer on the Beach 2013
www.qualister.com.br
(48) 3285 5615 / 9645 5506 [email protected]
Testes ágeis: rápido, frequente e automa5zado
• Terceirização de profissionais • Consultoria de teste • Avaliação de usabilidade • Automação de testes • Testes de performance • Treinamentos
www.qualister.com.br
Direitos autorais
Importante – É proibida a cópia e reprodução de qualquer parte
do conteúdo desta apresentação incluindo, mas
não limitado a, textos, imagens, gráficos e tabelas.
Esta apresentação é protegida pelas leis de
Copyright e são propriedade de Cristiano Caetano
e Qualister Consultoria e Treinamento LTDA.
– Não é permitido modificar, copiar, guardar em
banco de dados público, alugar, vender ou
republicar qualquer parte desta apresentação,
sem prévia permissão explícita do autor.
– Quando houver permissão de uso deste material,
é obrigatória a referência bibliográfica conforme as
normas vigentes.
www.qualister.com.br
Instrutor
Cristiano Caetano Email: [email protected] Apresentações: slideshare.net/cristianocaetano
É certificado CBTS pela ALATS. Diretor técnico da Qualister com mais de 10 anos de experiência, já trabalhou na área de qualidade e teste de software para grandes empresas como Zero G, DELL e HP Invent. É colunista na área de Teste e Qualidade de software do site linhadecodigo.com.br e autor dos livros "CVS: Controle de Versões e Desenvolvimento Colaborativo de Software" e "Automação e Gerenciamento de Testes: Aumentando a Produtividade com as Principais Soluções Open Source e Gratuitas". Participante ativo da comunidade de teste de software brasileira, é o criador e mantenedor do portal TestExpert: A sua comunidade gratuita de teste e qualidade de software (www.testexpert.com.br).
www.qualister.com.br
twitter.com/c_caetano
www.qualister.com.br
Tópico
• Introdução
www.qualister.com.br
Manifesto Ágil: Valores
• Indivíduos e interação entre eles ao invés de processos e ferramentas;
• Software em funcionamento ao invés de documentação abrangente;
• Colaboração com o cliente ao invés de negociação de contratos;
• Responder a mudanças ao invés de seguir estritamente um plano.
http://agilemanifesto.org/
www.qualister.com.br
Testes ágeis
• O teste ágil é caracterizado por ser uma atividade: – desempenhada por todos os membros do time; – que ocorre em todas etapas do ciclo de vida de desenvolvimento; – e que o ocorre frequentemente em ciclos contínuos; – através de mecanismos automatizados (sempre quando possível).
www.qualister.com.br
• Cultura: A qualidade é responsabilidade de todos
Testes ágeis
www.motivatedphotos.com
www.qualister.com.br
Testes ágeis
Desenvolvimento Testes
Desenvolvimento Testes
TRADICIONAL
ÁGIL – TESTE CONTÍNUO E AUTOMATIZADO
www.qualister.com.br
Testes ágeis
Unidade e integração entre componentes
Integração de sistema
UI
Baseado em: Mike Cohn - Test Automation Pyramid
www.qualister.com.br
Testes ágeis
- Cus
to +
Unidade e integração entre componentes
Integração de sistema
UI
www.qualister.com.br
Testes ágeis
- Man
uten
ção
+
Unidade e integração entre componentes
Integração de sistema
UI
www.qualister.com.br
Testes ágeis
+ Ve
loci
dade
-
Unidade e integração entre componentes
Integração de sistema
UI
www.qualister.com.br
Tópico
• Métodos de testes ágeis
www.qualister.com.br
Métodos de testes ágeis
• Estilos de teste de unidade: – TAD (Test After Development) – TDD (Test Driven Development)
www.qualister.com.br
Métodos de testes ágeis
• TAD (Test After Development)
Conversor de temperatura
Conversor deverá converter graus Celcius para graus Fahrenheit de acordo com a seguinte fórmula: °C = (°F − 32) / 1,8 °F = °C × 1,8 + 32
www.qualister.com.br
Métodos de testes ágeis
• TAD (Test After Development) @Test public void testConverter30GrausCelciusParaFahrenheit() {
Conversor c = new Conversor(); assertEquals(c.celciusToFahrenheit(30), 86, 00);
}
www.qualister.com.br
Métodos de testes ágeis
• TDD (Test Driven Development) – Alta coesão – Baixo acomplamento – Menor complexidade – Maior testabilidade
www.qualister.com.br
Métodos de testes ágeis
• O BDD é uma técnica de desenvolvimento de software, onde os programadores desenvolvem o software guiados por comportamentos (testes de aceitação)
• 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
Métodos de testes ágeis
• Um comportamento é descrito por uma estória e por testes de aceitação conforme o modelo propoposto por Dan North
www.qualister.com.br
Métodos de testes ágeis
Cenários de uso
Exemplos de uso
Limitações
Restrições Premissas
Assunções
Expecta5vas
Linguagem Ubíqua
www.qualister.com.br
Métodos de testes ágeis
• Várias ferramentas auxiliam o programador a transformar os comportamentos em verificações automatizadas
Código
API
Interface gráfica
Etc... Comportamento em linguagem
natural
Codigo de suporte “fixture” que encapsula a
implementação da ação descrita em linguagem natural
www.qualister.com.br
Métodos de testes ágeis
http://blog.dannorth.net/introducing-bdd/
http://jbehave.org/
jBehave • Behavior-Driven
www.qualister.com.br
Métodos de testes ágeis
Testes de aceitação em linguagem
natural na filosofia BDD
Codigo de suporte “fixture” que encapsula a
implementação da ação descrita em linguagem natural
Código/API do sistema sendo exercitado para
validar um comportamento
1
2
3
www.qualister.com.br
Métodos de testes ágeis
http://jbehave.org/
www.qualister.com.br
Métodos de testes ágeis
http://fitnesse.org/ http://www.spinsp.org.br/apresentacao/57_fitnesse.pdf
Fitnesse • Data-driven (tabela de decisão)
www.qualister.com.br
Métodos de testes ágeis
http://fitnesse.org/ http://www.spinsp.org.br/apresentacao/57_fitnesse.pdf