Análise de valores-limite

Por que os defeitos ocorrem frequentemente nos limites e como aplicar a análise de valores-limite a campos, intervalos e condições de transição.

Atualizado:

Sumário

A análise de valores-limite segue uma ideia simples e prática: erros ocorrem frequentemente nos limites de intervalos e condições. Esses são pontos comuns para operadores de comparação incorretos, erros em limites inclusivos/exclusivos e tratamento inadequado de valores vazios ou extremos.

O que conta como limite

  • →O valor mínimo permitido
  • →O valor máximo permitido
  • →O valor imediatamente antes de um limite
  • →O valor exatamente em um limite
  • →O valor imediatamente após um limite

Exemplo

Se as senhas devem conter de 8 a 20 caracteres, os candidatos úteis são os tamanhos 7, 8, 9, 19, 20 e 21. Eles geralmente oferecem mais valor do que tamanhos arbitrários, como 11 e 14.

Onde é particularmente útil

  • →Intervalos numéricos, limites, comprimentos de string e tamanhos de arquivo
  • →Datas e intervalos: início, término, prazos e expiração
  • →Limites de contagem: tentativas, itens, solicitações e usuários
  • →Regras de negócios baseadas em limites: descontos por valor, acesso por função e alterações de status após o cumprimento das condições

Erros comuns

  • →Verificando apenas os valores-limite e esquecendo seus vizinhos
  • →Ignorando limites lógicos que não são explicitamente numéricos
  • →Negligenciando condições inclusivas versus condições exclusivas
  • →Tratar o BVA sozinho como suficiente para uma lógica de negócios complexa
📏

A análise de limites funciona particularmente bem com o particionamento de equivalência: primeiro identifique as partições e depois reforce a cobertura nas suas bordas.

Matriz de limites resolvida: limites inclusivos

Considere um campo de treinamento separado que aceita um identificador ASCII com 8–20 letras, inclusive. Todos os caracteres são válidos; somente o tamanho muda. Escolhemos ASCII para que caracteres, bytes e unidades de código não introduzam uma segunda variável. Este é um exercício de projeto de testes, não uma recomendação de segurança de senhas.

plain text
Tamanho	Exemplo	Esperado
7	aaaaaaa	Rejeitar: muito curto
8	aaaaaaaa	Aceitar
9	aaaaaaaaa	Aceitar
19	aaaaaaaaaaaaaaaaaaa	Aceitar
20	aaaaaaaaaaaaaaaaaaaa	Aceitar
21	aaaaaaaaaaaaaaaaaaaaa	Rejeitar: muito longo

Para essa regra de tamanho inteiro, um conjunto compacto de análise de valores-limite de 2 valores é 7, 8, 20, 21: ele cruza cada fronteira válida/inválida. O conjunto de 3 valores também inclui o vizinho do outro lado de cada limite: 7, 8, 9 e 19, 20, 21. Este último pode revelar um defeito que afeta apenas o vizinho válido imediato. Esses conjuntos não cobrem todas as demais regras de entrada.

Exercício: quantidade de 1 a 5

Suponha que uma quantidade inteira obrigatória deva estar entre 1 e 5, inclusive. Escreva os candidatos da análise de limites de três valores antes de ler a resposta. Mantenha entradas ausentes, null, não inteiras e não numéricas como verificações separadas; elas não são representadas por valores-limite numéricos.

plain text
Entrada	Esperado
0	Rejeitar
1	Aceitar
2	Aceitar
4	Aceitar
5	Aceitar
6	Rejeitar

Se um limite se tornar exclusivo, derive novamente os resultados esperados da nova regra. Para valores decimais, carimbos de data/hora ou strings Unicode, primeiro defina a menor etapa relevante e o que o sistema realmente mede. “Um abaixo” de uma data ou limite de tamanho de arquivo não tem significado preciso sem uma unidade.

Continuar aprendendo

Particionamento de equivalência

Casos de teste

Referência técnica: programa ISTQB CTFL, seções 4.2 e 5.5. Os exemplos acima são cenários de treinamento originais.