4. Agenda
! 1. Abordagem tradicional
Globalcode
–
Open4education
5. Ciclo de vida genérico
Planejamento Especificação Execução Resultados
Globalcode
–
Open4education
6. Especificação de testes
Planejamento Especificação Execução Resultados
Oráculo Técnicas Condições Casos de Scripts de
(Requisito) de testes de testes testes testes
Globalcode
–
Open4education
7. Técnicas de testes
Planejamento Especificação Execução Resultados
Oráculo Técnicas Condições Casos de Scripts de
(Requisito) de testes de testes testes testes
Caixa Preta (Funcional) Caixa Branca (Estrutural)
Classes de equivalencia/Valores limítrofes
Teste estrutura de controle
Tabelas de decisão
Teste de condição
Pairwise
Teste de ciclo
Tabela de transição de estados
Teste de decisão
Árvore de classificação
Teste de fluxo de dados
Tabela de transição de estados
Globalcode
–
Open4education
8. Técnicas de testes
Planejamento Especificação Execução Resultados
rte s
P ontos fo
ica
Estad o da prát
l
Oráculo Técnicas Confiáve
Condições Casos de Scripts de
de testes l
epetitíve
(Requisito) de testes testes testes
R
co
Det erminísti
l
Previsíve
Caixa Preta (Funcional) Caixa Branca (Estrutural)
Classes de equivalencia/Valores limítrofes
Teste estrutura de controle
Tabelas de decisão
Teste de condição
Pairwise
Teste de ciclo
Tabela de transição de estados
Teste de decisão
Árvore de classificação
Teste de fluxo de dados
Tabela de transição de estados
Globalcode
–
Open4education
9. Execução (Baseada em scripts)
Planejamento Especificação Execução Resultados
Executar Registrar
Scripts de Registrar
os Scripts os
testes os defeitos
de testes resultados
Globalcode
–
Open4education
10. Execução (Baseada em scripts)
Scripts de
testes de
requisitos e
regras
individuais
Scripts de
testes End-to-
End e de
integração
Globalcode
–
Open4education
11. Execução (Baseada em scripts)
Scripts de
testes de
requisitos e
regras
individuais
s
Pontos forte
a
o da prátic
É o estad ustos
Baixos c ado
a utomatiz
Pode ser mensurável
te
Facilmen
Scripts de
testes End-to-
End e de
integração
Globalcode
–
Open4education
12. Execução (Baseada em scripts)
! Execução (Baseada em Scripts)
Globalcode
–
Open4education
13. Técnicas de testes
Caixa Preta (Funcional) Caixa Branca (Estrutural) Baseada na experiência
Classes de equivalencia/Valores limítrofes
Teste estrutura de controle
Tabelas de decisão Suposição de erro
Teste de condição
Pairwise Baseado em checklist
Teste de ciclo
Tabela de transição de estados Ataques
Teste de decisão
Árvore de classificação Testes exploratórios
Teste de fluxo de dados
Tabela de transição de estados
Testes exploratórios
Globalcode
–
Open4education
15. Testes exploratórios
! Conceitos:
! O teste exploratório é, na sua definição mais básica, o
aprendizado, a criação e a execução ao mesmo tempo
de um teste.
! É uma atividade iterativa e empírica de exploração
que exige idas e vindas num processo de investigação
contínuo onde a intuição, a criatividade e a experiência
do testador são indispensáveis para garantir a eficiência
do teste.
Cristiano Caetano: Testes exploratórios de A a Z
http://www.linhadecodigo.com.br/artigo/1102/Testes-Explorat%C3%B3rios-de-A-a-Z.aspx
Globalcode
–
Open4education
16. Testes exploratórios
! Características:
! O projeto, execução, interpretação e aprendizado são realizados pela
mesma pessoa;
! O projeto, execução, interpretação e aprendizado acontecem juntos, ao
invés de serem executados em momentos diferentes no tempo;
! O testador faz as suas escolhas sobre o que será testado, quando testar e
como testar, ao invés de seguir cegamente um roteiro;
! O testador enfoca em revelar novas informações sobre o produto, ao invés
de confirmar coisas já conhecidas sobre o produto;
! Tudo o que o testador aprendeu de novo durante o teste, incluindo o
resultado do último teste, serve como subsídio para decidir o que será
testado a seguir;
! O testador pode usar qualquer tipo de ferramenta automática para apoiar o
seu teste ou decidir não usar nenhuma ferramenta;
! O testador pode variar diversos aspectos durante a execução dos seus
testes, ao invés de repeti-los da mesma forma
Globalcode
–
Open4education
17. Testes exploratórios
Caixa Preta (Funcional) Caixa Branca (Estrutural) Baseada na experiência
Classes de equivalencia/Valores limítrofes
Teste estrutura de controle
Tabelas de decisão Suposição de erro
Teste de condição
Pairwise Baseado em checklist
Teste de ciclo
Tabela de transição de estados Ataques
Teste de decisão
Árvore de classificação Exploratório
Teste de fluxo de dados
Tabela de transição de estados
Informal
Não sistemático
Não é confiável
Não é repetitível
Não é reproduzível
Não produz evidências
Globalcode
–
Open4education
20. SBTM: Testes exploratórios
baseados em sessões
! Teste exploratório baseado em
sessões oferece um mecanismo para
planejar, acompanhar e dar maior
visibilidade ao teste exploratório, sem
no entanto, burocratizar a exploração
http://www.satisfice.com/sbtm/index.shtml
Globalcode
–
Open4education
21. SBTM: Testes exploratórios
baseados em sessões
! Elementos básicos:
! Em uma sessão de trabalho com
um período pré-determinado de
tempo, um testador interage com o
software para cumprir os objetivos
de uma missão de testes e relatar
os resultados.
Globalcode
–
Open4education
22. SBTM: Testes exploratórios
baseados em sessões
! Elementos básicos:
! Em uma sessão de trabalho com
um período pré-determinado de
tempo, um testador interage com o
software para cumprir os objetivos
de uma missão de testes e relatar
os resultados.
Globalcode
–
Open4education
23. SBTM: Testes exploratórios
baseados em sessões
! Testador:
! No teste exploratório o oráculo é o testador. Neste
caso, a experiência do testador afeta diretamente a
qualidade do teste exploratório.
! Criatividade
! Observação cuidadosa
! Metódico
! Pensamento crítico
! Aprendizado rápido
! Intuição
! Improviso
! Auto-gerenciamento
Globalcode
–
Open4education
24. SBTM: Testes exploratórios
baseados em sessões
! Software:
! É o produto alvo da missão do teste exploratório.
Para que o teste exploratório ocorra, é necessário
que o software (funcionalidade, tela, etc) já tenha
sido desenvolvido.
! Como muitas vezes não existe documentação,
requisitos, etc, o software é a única fonte de
informação disponível para apoiar a exploração
Globalcode
–
Open4education
25. SBTM: Testes exploratórios
baseados em sessões
! Missão:
! A missão determina o que deve ser testado (não
como o teste deve ser realizado).
! Ao final da sessão de teste exploratório, novas
idéias, oportunidades ou problemas encontrados
pelo testador podem ser usados para a criação de
novas missões.
! Não deve ser muito específica nem muito
genérica
Globalcode
–
Open4education
26. SBTM: Testes exploratórios
baseados em sessões
! Missão:
! Heurísticas (estratégias para geração de idéias)
! Heurística HICCUPPS (Michael Bolton)
! Heurística SFDPO (James Bach)
! Heurística FCC CUTS VIDS (Mike Kelly)
! CRUCSPICSTMP (Test Eye team)
! Heurística IOSC
! Heurística de consistência
! Pensamento lateral orientado a questionamentos
! Atributos da Qualidade
! Entre outros
Learning Styles and Exploratory Testing
http://www.kaner.com/pdfs/ExploratoryTestingandLearningStyles(Final).pdf
Globalcode
–
Open4education
27. SBTM: Testes exploratórios
baseados em sessões
! Missão:
! Heurísticas (Rolling Strategy Dice)
The Big Exploratory Testing Rolling Strategy Dice
http://testing.gershon.info/201108/the-big-exploratory/
Globalcode
–
Open4education
28. SBTM: Testes exploratórios
baseados em sessões
! Sessão:
! Compreende um período ininterrupto de tempo com
duração de cerca de 1 a 2 horas. Alguns autores
recomendam 90 minutos no máximo.
! Durante a sessão, o testador cria e simultâneamente
executa os testes. Além disso, também aprende mais
sobre o funcionamento e comportamento do software.
! Durante a sessão o testador também investiga e
registra defeitos, assim como, configura e prepara o
ambiente de testes.
Globalcode
–
Open4education
29. SBTM: Testes exploratórios
baseados em sessões
! Sessão:
! Etapas
! Preparação (Setup): Preparação do ambiente de testes,
configuração de massa de dados, leitura de manuais,
requisitos, diagramas, etc.
! Especificação (Design): Definição (modelo mental) dos
casos de testes (hipóteses) baseados em heurísticas,
idéias, checklists, etc.
! Execução (Execution): Execução propriamente dita do
teste exploratório para demonstrar se as hipóteses/
expectativas foram atendidas (ou não).
! Oportunidades (Opportunities): Tempo gasto em
atividades/explorações/Investigações que não estão no
escopo ou foco da missão.
! Relato de defeitos (Bug investigation/Report):
Investigação e registro de defeitos.
Globalcode
–
Open4education
30. SBTM: Testes exploratórios
baseados em sessões
! Resultados:
! Durante o teste exploratório o testador registra os
resultados no Relatório da Sessão.
! O relatório inclui notas sobre o que foi testado, o
ambiente de testes, arquivos de dados, defeitos
encontrados, algumas métricas básicas, etc.
Globalcode
–
Open4education
32. SBTM: Testes exploratórios
baseados em sessões
! Resultados:
! Debrief (Prestação de contas)
! Visibilidade e feedback sobre o que foi feito
! Jon Bach, um dos idealizadores do teste exploratório baseado
em sessões, recomenda que a prestação de contas siga a
estrutura descrita pelo acrônimo PROOF:
! (P) Past (passado): O que aconteceu durante a sessão?
! (R) Results (resultados): Quais resultados foram atingidos
durante a sessão?
! (O) Obstacles (obstáculos): Quais obstáculos atrapalharam a
exploração?
! (O) Outlook (previsão/perspectiva): O que ainda falta fazer?
! (F) Feelings (sentimentos): Como o testador se sente (em
relação ao teste ou qualidade)?
How to Manage and Measure Exploratory Testing
http://www.quardev.com/content/whitepapers/how_measure_exploratory_testing.pdf
Globalcode
–
Open4education
33. Agenda
! 3. Ferramentas de apoio
Globalcode
–
Open4education
42. Conclusão
Ciência Arte
(Sistemático) (Criatividade)
Testes baseados
em Scripts Exploratórios
freestyle
Globalcode
–
Open4education
43. Conclusão
! Método científico:
Os progressos da ciência são acompanhados de muitas horas de trabalho
cuidadoso, que segue um caminho mais ou menos sistemático na busca de
respostas a questões científicas. É este o caminho denominado de método
científico (Wikipédia)
Globalcode
–
Open4education
44. Conclusão
Complementar com mais diversificação
os testes tradicionais baseados em
scripts
Globalcode
–
Open4education
45. Conclusão
Testes exploratórios (manuais)
Scripts de testes (manuais)
Scripts de testes (automatizados)
Testes unitários e de integração
(Automatizados)
Testes estáticos
Revisões de artefatos
Globalcode
–
Open4education
47. Para saber mais...
! Heuristic Test Strateg Model
! http://www.satisfice.com/tools/satisfice-tsm-4p.pdf
! A Tutorial in Exploratory Testing
! http://www.kaner.com/pdfs/QAIExploring.pdf
! Session-based testing
! http://en.wikipedia.org/wiki/Session-based_testing
! Dynamics of Exploratory Testing
! http://www.quardev.com/content/whitepapers/ExploratoryTestingasSport_JonBach_PNSQC06pdf.pdf
! Exploratory Testing in an Agile Context
! http://www.agilistry.com/downloads/ETinAgile-agile2011-final.pdf
! The Nature of Exploratory Testing
! http://www.testingeducation.org/a/nature.pdf
! How to Manage and Measure Exploratory Testing
! http://www.quardev.com/content/whitepapers/how_measure_exploratory_testing.pdf
Globalcode
–
Open4education
48. Para saber mais...
! Exploratory Testing in Pairs
! http://www.kaner.com/pdfs/exptest.pdf
! How to: Start an Exploratory Test Session in Microsoft Test Manager
! http://msdn.microsoft.com/en-us/library/hh191616(v=vs.110). Aspx
! Exploratory Testing – An Agile Approach
! http://xebee.xebia.in/wp-content/uploads/2009/11/Exploratory-Testing-an-Agile-approach.pdf
! Learning Styles and Exploratory Testing
! http://www.testingeducation.org/a/lset.pdf
! Session-Based Test Management
! http://www.satisfice.com/articles/sbtm.pdf
! Learning Styles and Exploratory Testing
! http://www.kaner.com/pdfs/ExploratoryTestingandLearningStyles(Final).pdf
! Testing in Session - How to measure exploratory testing
! http://sasqag.org/pastmeetings/ExploratoryTesting_SessionBasedTestManagement.pdf
! Test Heuristics Cheat Sheet
! http://testobsessed.com/wp-content/uploads/2011/04/testheuristicscheatsheetv1.pdf
Globalcode
–
Open4education