Pairwise é um método conhecido por diminuir consideravelmente a quantidade de testes quando se necessita testar a combinação de muitas variáveis, permitindo reduzir drasticamente a quantidade de casos de teste requeridos como cobertura. Vamos falar sobre o uso dessas ferramentas, suas inúmeras formas de utilização e principalmente cenários impróprios, quando a não utilização de uma ferramenta de pairwise se torna o melhor caminho para garantir uma cobertura de testes sustentável.
3. Globalcode – Open4education
Como testar um software?
Segmentação
Orçamento
Execução
Prazo
Desenvolvimento
Manutenção
Tipos de testes
Cobertura (%)
4. Globalcode – Open4education
Técnicas de testes
...
Analise de valor limite
Combinação por pares
Tabelas de decisão
...
>: 4 8 15 16 23 42
Técnica complementar
gerada por análise
combinatória
5. Globalcode – Open4education
Combinação por pares
100% de cobertura
Teste exaustivo
Alto custo
Demorado
N% de cobertura
Teste complementar
Baixo custo
Rápido
6. Globalcode – Open4education
Variáveis de entrada
Cenários de testes
2 X 2 X 3 = 12
parâmetros tp_pessoa contrato juros
variável p_fisica mensal fixo
variável p_juridica anual simples
variável composto
8. Globalcode – Open4education
Cenários de testes
2 X 2 X 2 X 3 X 4 = 96
Variáveis de entrada ++
usuário tp_pessoa contrato juros
basic p_fisica mensal isento
pro p_juridica anual fixo
simples
composto
13. Globalcode – Open4education
Aplicação da técnica
Sendo um analista financeiro
Posso cadastrar contratos de vendas
Para poder comercializar imóveis residenciais
Tipo de teste empregado
Testes de interface
14. Globalcode – Open4education
Especificação de testes
Critério de aceite
O sistema deve
permitir que
ambos os tipos
de usuários
realizem
cobrança.
cenários usuários tp_pessoa contrato juros
01 basic p_fisica mensal isento
02 pro p_juridica anual isento
03 basic p_juridica mensal fixo
04 pro p_fisica anual fixo
05 basic p_fisica anual simples
06 pro p_juridica mensal simples
07 basic p_juridica anual composto
08 pro p_fisica mensal composto
15. Globalcode – Open4education
cenários usuários tp_pessoa contrato juros
01 basic p_fisica mensal isento
02 pro p_juridica anual isento
03 basic p_juridica mensal fixo
04 pro p_fisica anual fixo
05 basic p_fisica anual simples
06 pro p_juridica mensal simples
07 basic p_juridica anual composto
08 pro p_fisica mensal composto
Critério de aceite
O sistema não
deve permitir que
usuários do tipo
basic cadastrem
contratos para
cliente do tipo
pessoa jurídica.
16. Globalcode – Open4education
cenários usuários tp_pessoa contrato juros
01 basic p_fisica mensal isento
02 pro p_juridica anual isento
03 basic p_juridica mensal fixo
04 pro p_fisica anual fixo
05 basic p_fisica anual simples
06 pro p_juridica mensal simples
07 basic p_juridica anual composto
08 pro p_fisica mensal composto
Critério de aceite
O sistema não
deve permitir que
contratos anuais
sejam
cadastrados para
clientes do tipo
pessoa física.
17. Globalcode – Open4education
Relacionamento entre
classes
contrato_comum
contrato_mensal
contrato_anual
cenários usuários tp_pessoa contrato juros
01 basic p_fisica mensal isento
02 pro p_juridica anual isento
03 basic p_juridica mensal fixo
04 pro p_fisica anual fixo
05 basic p_fisica anual simples
06 pro p_juridica mensal simples
07 basic p_juridica anual composto
08 pro p_fisica mensal composto
19. Globalcode – Open4education
Antes de usar
ferramentas do tipo
Pairwise, levante primeiro
qual a real necessidade de testes
para o sistema que você está testando.
Conclusão
cenários equivalência tempo eficácia confiança
96 100% 19m02s
17 17,7% 3m04s
4 4,16% 48s
21. Globalcode – Open4education
Pairwise Testing
http://www.pairwise.org
Ferramentas Pairwise
http://www.pairwise.org/tools.asp
Pairwise Testing: A best practice that Isn’t
http://www.testingeducation.org/wtst5/PairwisePNSQC2004.pdf