técnicas de modelagem de testes
DESCRIPTION
Apresenta as técnicas de modelagem de testes partição por equivalência e valores limites, e como estas auxiliam na identificação de casos de teste.TRANSCRIPT
Técnicas de modelagem de testes
Prof. Leonardo Soares
Campus Garanhuns
Aprendemos a validar se os métodos que implementamos estão corretos
Fizemos isto através da passagem de um conjunto de entradas para estes métodos e da avaliação de sua saída
Mas, será que os valores que as entradas que testamos representam um conunto significativo de valores
Recapitulando
Considerando o método validarCPF( String cpf ) O método irá avaliar se o cpf apresenta condições
válidas Este método deve retorna TRUE em caso de uma
validação com sucesso ou FALSE em caso contrário
Quais seriam as possíveis entradas?
Vamos a um exemplo
Testes são custosos e demorados, por isso é importante escolher os mais importantes
Devemos testar tanto quanto possível, porém temos o limite de cronograma e orçamento
Precisamos identificar um conjunto de testes que representem com uma boa margem de segurança a cobertura sobre as falhas com maior probabilidade de ocorrerem
Mas o problema continua, como identificar os testes necessários?
Escolha dos testes necessários
Como identificar os testes necessários?
• Podemos dar “chutes”• Podemos considerar apenas os cenários de
sucesso• Ou podemos considerar apenas os cenários de
falha• Mas, há formas mais efetivas de realizar este
processo!
Quais são os teste necessários?
Considerem o exemplo: método aplicarMulta( Float velocidade) O valor base da multa é R$ 100 , dependendo
da velocidade o valor é modificado Se a velocidade for entre 50 a 80, aplica-se
10% ao valor base, se for acima de 80 a 100, aplica-se 20%, acima de 100 aplicação 30%.
O método deve retornar o valor da multa ou -1 em caso de falha
Técnicas de elaboração dos casos de testes
1.Partição por equivalência2.Métodos dos valores-limite3.Grafo causa-efeito4.Dentre outros…
Significado de equivalente
Adj. 2g. Do mesmo valor; Que tem valor igual (a outro); Que pode substituir outro produzindo os
mesmos efeitos ou tendo igual virtude, igual significado, etc.
Partição por equivalência
Vamos reduzir a quantidade de casos de teste ao agrupar os valores que tenham semântica similar (equivalentes) Para um sistema de cadastro de motoristas do detran
poderíamos habilitar o motorista com base em sua idade Quais são as possíveis entradas para as idades dos
motoristas? Fazemos este agrupamento, pois sabemos que o
comportamento do sistema será similar para as classes equivalentes
São consideradas partições válidas e inválidas
Exemplo partições para cidades
• Cidades:• Recife• Garanhuns• Belo Jardim• Caruaru
• Divisão em classes de equivalência:• Entrada: Capital ou Interior
Exemplo de veículos
• Gol• HB20• Onix• Frontier• L200• Hilux
Identificar os valores que podem ser usados (entradas ou saídas)
Participar estes valores em classes Classes de entrada Classes de saída
Etapas da técnica
Calcular imposto com base no salário – calcular( Float salario ) Imposto 27,5% a partir de 3.743 Imposto 22,5% a partir de 2.995 até 3.743
Um programa valida um campo numérico da seguinte maneira: Valores inferiores ou iguais a 0 são rejeitados, valores
entre 1 e 130 são aceitos, valores maiores ou iguais a 131 são rejeitados.
Exercício
Método dos valores-limite
Uma prática comum para reduzir a quantidade de casos de teste é testar os valores com maior probabilidade de causarem erros
Estes valores normalmente são valores próximos aos valores limite Verificar se alimento está fora do prazo de
validade 08/10/12 Verificar se um carro está acima do limite de
100km Verificar se a quantidade de digitos do CPF está
correta
Método dos valores-limite
• Utilizamos como base os valores limite do domínio de entrada
• Em vez de selecionar qualquer valor seleciona-se os chamados valores de fronteira• Antes da fronteira• Na fronteira• Após a fronteira
Considerando que um campo referente a data de nascimento aceita valores de 1860 até 2860
Quais são os valores limites?
Exemplo de valores limites
Exemplo de valores-limite
• Recall de todos os veículos fabricados entre 15/01/2009 e 20/04/2009:• CASO_TESTE01 = Valor de entrada: 14/01/2009• CASO_TESTE02 = Valor de entrada: 15/01/2009• CASO_TESTE03 = Valor de entrada: 16/01/2009• CASO_TESTE04 = Valor de entrada: 19/04/2009• CASO_TESTE05 = Valor de entrada: 20/04/2009• CASO_TESTE06 = Valor de entrada: 21/04/2009