A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Técnicas de Testes Caixa-Preta

Apresentações semelhantes


Apresentação em tema: "Técnicas de Testes Caixa-Preta"— Transcrição da apresentação:

1

2 Técnicas de Testes Caixa-Preta
Marília Oliveira 07/08/2007

3 Introdução Testes caixa-preta são aqueles baseados em especificações que descrevem o comportamento externo do sistema (as saídas) em relação a um conjunto de entradas.

4 Cenário Comuns Especificações diferentes Diferentes tipos de entrada
Grande número de entradas possíveis Plataformas diferentes Quais testes executar? Testes de Caixa Preta

5 Tipos de Testes Caixa Preta
Classe de Equivalência Valores Limites Tabela de Decisão Pairwise Transição de Estados

6 Classe de Equivalência

7 Classes de Equivalência
É uma técnica usada para reduzir a quantidade de casos de testes a um montante gerenciável, mas mantendo um elevado grau de cobertura

8 Classes de Equivalência
O conjunto de entradas possíveis é dividido em partições; Os elementos de um subconjunto são equivalentes em relação a uma característica; Os subconjuntos são disjuntos. s1 s2 s4 s3

9 Classes de Equivalência
A técnica admite que se as entradas estão divididas em partições de equivalência, o comportamento do sistema será o mesmo para qualquer entrada escolhida em uma mesma partição. Dessa forma não é preciso testar todas as entradas possíveis, basta testar uma opção de cada partição.

10 Classes de Equivalência
Exemplos: Em um sistema de cadastro de clientes: Se o cliente for pessoa física, devem ser informados os dados: Nome, RG, CPF e Endereço. Se o cliente for pessoa jurídica, devem ser informados os dados: Razão Social, Nome Fantasia, CNPJ, Endereço.

11 Valores de Fronteira

12 Valores de Fronteira É uma técnica em testes de software utilizada para testar valores nas “fronteiras” das faixas de entrada, por exemplo...

13 Valores de Fronteira Considere as seguintes regras organizacionais, sobre contratação baseada em idade, em um programa de uma empresa de recursos humanos: 0-16 Não Contrata 16-18 Contrata meio-expediente 18-55 Contrata tempo integral 55-99 Não Contrata

14 Valores de Fronteira Uma regra correta seria:
Se (idadeCandidato >= 0 && idadeCandidato <= 15) estadoContratação = “Não”; Se (idadeCandidato >= 16 && idadeCandidato <= 17) estadoContratação = “Meio”; Se (idadeCandidato >= 18 && idadeCandidato <= 54) estadoContratação = “Integral”; Se (idadeCandidato >= 55 && idadeCandidato <= 99) estadoContratação = “Não”; Conjuntos de valores interessantes para serem testados são {-1,0,1},{15,16,17},{17,18,19},{54,55,56} e {98,99,100}. Dependendo das pré-condições, valores como {-42, 1001, FRED, também devem ser testados!

15 Valores de Fronteira Passos: Identifique as classes de equivalência.
Identifique as fronteiras de cada classe. Crie casos de teste para cada valor de fronteira, escolhendo um ponto abaixo, um acima e outro ponto na fronteira. Obs.: “Acima” e “abaixo” são termos relativos, dependendo da unidade, exemplo: Inteiros, Moeda, horas, etc.

16 Valores de Fronteira No exemplo abaixo quais são os dados de entrada para testes de fronteira? E no caso a seguir: Valores de Fronteiras $ 1000/month $ 83,333/month Valores de Fronteiras 1 6 2 3 4 5

17 Tabela de Decisão

18 Tabela de Decisão Tabelas de decisão é uma excelente técnica para capturar alguns tipos de requisitos do sistema e para documentar modelagens internas do sistema. Elas são utilizadas para registrar regras de negócio complexas. Também servem como guia para criar casos de teste.

19 Tabela de Decisão Tabelas de decisão representam regras de negócio complexas baseadas em um conjunto de condições: Regra1 Regra2 ... Regra P Condições Cond-1 Cond-2 Cond-m Ações Ação-1 Ação-2 Ação-n

20 Tabela de Decisão Condições de 1 a m, representam as condições de entrada. Ações de 1 a n, representam ações a serem tomadas dependendo das combinações das várias condições.

21 Tabela de Decisão Cada regra pode especificar uma ação exclusiva a regra, ou regras podem compartilhar ações: Regra1 Regra2 Regra3 Regra 4 Condições Casado ? Sim Não Bom Estudante? Ações Desconto 60 25 50

22 Tabela de Decisão Uma regra também pode possuir mais de uma ação; exclusiva ou compartilhada com outras regras: Regra1 Regra2 Regra3 Regra 4 Condições Cond-1 Sim Não Cond-2 Ações Ação-1 Do X Do Y DO Z Ação-2 Do-A Do B

23 Tabela de Decisão Valores das condições podem ser mais complexos:
Regra1 Regra2 Regra3 Regra 4 Condições Cond-1 0 – 1 1 – 10 10 – 100 100 – 100 Cond-2 < 5 5 6 ou 7 >7 Ações Ação-1 Do X Do Y DO Z Ação-2 Do-A Do B

24 Pairwise

25 Pairwise Web Site Banco 4 tipos de cliente 5 tipos de conta 27 estados
8 browsers 3 plug-ins 6 sistemas operacionais clientes 3 servidores de aplicação 3 servidores 1.296 combinações Banco 4 tipos de cliente 5 tipos de conta 27 estados 540 combinações O que estes exemplos possuem em comum?

26 Pairwise Cada um tem uma grande quantidade de combinações a serem testadas. Cada um tem uma grande quantidade de combinações que podem ser muito arriscadas de não serem testadas. A resposta é não tentar testar todas as combinações de valores e variáveis e sim testar todos os pares de variáveis. Como selecionar um subconjunto razoavelmente pequeno e eficiente, que ache uma grande variedade de erros, mais, do que você esperaria de tal subconjunto?

27 Pairwise Exemplos: Para um sistema com 4 parâmetros diferentes cada um podendo assumir 3 valores, resulta em 34 = 81 combinações. Com Pairwise reduz-se para 9 testes. Para um sistema com 13 parâmetros diferentes cada um podendo assumir 3 valores, resulta em 313 = 1,594,323 combinações. Com Pairwise reduz-se para 15 testes. Para um sistema com 20 parâmetros diferentes cada um podendo assumir 10 valores, resulta em 1020 ( ) combinações. Com Pairwise reduz-se para 180 testes.

28 Pairwise Como pairwise funciona tão bem? Importante !!
Não se sabe ao certo!!! Importante !! Teste por Pairwise pode não escolher combinações que desenvolvedores e/ou testadores sabem que são freqüentes ou de alto risco. Caso isso ocorra use a técnica de pairwise e adicione casos de teste para minimizar os risco de deixar passar uma importante combinação.

29 Pairwise Em Lessons Learned in Software Testing, James Bach criou um algoritmo para gerar todos os pares. Baseado no algoritmo, escreveu um programa chamado “Allpairs” ( que gera automaticamente todos os pares. Procedimentos Download e unzip Allpairs Preencha a tabela com os valores das variáveis do sistema web (browser, plug-in, servidores, etc) abaixo no Excel salve como .txt Execute o programa através do comando: allpairs imput.txt > output.txt Browser Client OS Plg-in Server Server OS IE 5.0 Win 95 None IIS Win NT IE 5.5 Win 98 RealPlayer Apaache Win 2000 IE6.0 Win ME Media Player WebLogic Linux Nestscape 6.0 Nestscape 6.1 Nestscape 7.0 Win XP Mozilla 1.1 Opera 7

30 Pairwise ... Output.txt CASE Browser Client OS Plg-in Server Server OS
pairings 1 IE 5.0 Win 95 None IIS Win NT 10 2 Win 98 RealPlayer Apaache Win 2000 3 Win ME Media Player WebLogic Linux 4 ÿ 5 6 Win XP 7 8 9 IE 5.5 ... 95 ~Nestscape 6.0

31 Transição de Estados

32 Transição de Estados Ótima, para capturar requisitos e detalhes da modelagem. Utilizada quando o sistema necessita ter “memória” ou quando pedidos de operação válidos e inválidos existem!!! Técnica vital para analistas, desenvolvedores, arquitetos, testadores, etc.

33 Transição de Estados Diagramas de transições de estado definem como um sistema interage com o mundo, os eventos que processa e a ordem válida e inválida desses eventos. Diagramas de transição de estado não são a única maneira de documentar o comportamento do sistema, mas são mais fáceis de entender. Tabelas de transição de estado são fáceis de utilizar.

34 Transição de Estados Pago Feita Emitido CanceladoPorCliente
Embarcado darInfo/iniciarTimerPg Feita Pago pagarDinheiro Emitido emitirBilhete/ Bilhete entregarBilhete CanceladoFaltaPg timerPgExpirado cancelar cancelar/reembolso Cancelar[devolverBilhete]/reembolso

35 Considerações finais As técnicas não são excludentes
As regras de negócio de um sistema geralmente mesclam essas características É possível considerar mais de uma técnicas para criar o conjunto adequado de casos de testes.

36


Carregar ppt "Técnicas de Testes Caixa-Preta"

Apresentações semelhantes


Anúncios Google