Teste de tabela de decisão (exemplo)

⚡ Resumo Inteligente

O teste de tabela de decisão é uma técnica de caixa preta que captura combinações de entrada e suas saídas esperadas em formato tabular. Este tutorial explica o conceito de causa e efeito, apresenta exemplos de login e upload e demonstra por que o método oferece uma cobertura robusta para lógicas de negócios complexas.

  • 🧮 Ideia central: Uma tabela de decisão mapeia condições (causas) para resultados (efeitos) para cobertura sistemática.
  • 🔢 Regra de combinação: O número de regras é igual a 2 elevado ao número de condições (2^n).
  • 🔐 Exemplos práticos: As telas de login e de upload de fotos mostram condições Verdadeiro/Falso mapeadas para as respectivas saídas.
  • Melhor uso: Ideal quando o comportamento do sistema difere para cada combinação de entrada.
  • 🤖 Habilitação de IA: As ferramentas de IA agora geram tabelas de decisão a partir de requisitos e eliminam regras redundantes.

Teste da Tabela de Decisão

O que é teste de tabela de decisão?

O teste de tabela de decisão é uma técnica de teste de software usada para testar o comportamento do sistema para diferentes combinações de entrada. É uma abordagem sistemática na qual as diferentes combinações de entrada e seus respectivos comportamentos (saídas) do sistema são registrados em formato tabular. Por isso, também é chamado de teste de tabela de decisão. Causa efeito Tabela onde as causas e os efeitos são registrados para uma melhor cobertura dos testes.

A Tabela de decisão É uma representação tabular de entradas versus regras, casos ou condições de teste. É uma ferramenta altamente eficaz para sistemas complexos. teste de software e gerenciamento de requisitos. Uma tabela de decisão ajuda a verificar todas as combinações possíveis de condições, e os testadores podem identificar facilmente as condições ausentes. As condições são indicadas usando os valores Verdadeiro (V) e Falso (F).

Exemplo 1: Tabela de decisão para uma tela de login

Vamos criar uma tabela de decisão para uma tela de login.

Tabela Base de Decisão para Tela de Login

A condição é simples: se o usuário fornecer o nome de usuário e a senha corretos, ele será redirecionado para a página inicial. Se alguma informação estiver incorreta, uma mensagem de erro será exibida.

Condições Regra 1 Regra 2 Regra 3 Regra 4
Nome de usuário (T/F) F T F T
Senha (T/F) F F T T
Saída (E/H) E E E H

Legenda:

  • T – Nome de usuário/senha corretos
  • F – Nome de usuário/senha errados
  • E – Mensagem de erro é exibida
  • H – A tela inicial é exibida

Interpretação:

  • Caso 1 – Nome de usuário e senha incorretos. Uma mensagem de erro é exibida ao usuário.
  • Caso 2 – Nome de usuário correto, senha incorreta. Uma mensagem de erro é exibida ao usuário.
  • Caso 3 – Nome de usuário incorreto, senha correta. Uma mensagem de erro é exibida ao usuário.
  • Caso 4 – Nome de usuário e senha corretos. O usuário navega até a página inicial.

Ao converter isso para um caso de testeVocê pode criar dois cenários, porque os três casos de erro testam a mesma regra.

  • Insira o nome de usuário e a senha corretos e clique em Entrar — o usuário deverá ser redirecionado para a página inicial.
  • Digite um nome de usuário e/ou senha incorretos e clique em Entrar — o usuário deverá ver uma mensagem de erro.

Exemplo 2: Tabela de decisão para uma tela de upload

Agora, imagine uma caixa de diálogo que pede ao usuário para enviar uma foto sob certas condições:

  1. Somente o formato “.jpg” é permitido.
  2. O tamanho do arquivo deve ser inferior a 32 KB.
  3. A resolução deve ser 137 × 177.

Se alguma condição falhar, o sistema exibirá uma mensagem de erro correspondente; se todas as condições forem atendidas, a foto será carregada com sucesso.

Tabela de decisão para tela de upload

A tabela de decisão para este caso é apresentada abaixo.

Condições Caso 1 Caso 2 Caso 3 Caso 4 Caso 5 Caso 6 Caso 7 Caso 8
Formato . Jpg . Jpg . Jpg . Jpg Não .jpg Não .jpg Não .jpg Não .jpg
Dimensões: < 32 KB < 32 KB ≥ 32 KB ≥ 32 KB < 32 KB < 32 KB ≥ 32 KB ≥ 32 KB
Resolução 137 × 177 Não 137×177 137 × 177 Não 137×177 137 × 177 Não 137×177 137 × 177 Não 137×177
saída Foto enviada Incompatibilidade de resolução Tamanho incompatível Incompatibilidade de tamanho e resolução Formato incompatível Formato e resolução incompatíveis Formato e tamanho incompatíveis Formato, tamanho e resolução incompatíveis

A partir desta tabela, você pode criar oito casos de teste para uma cobertura completa:

  1. .jpg, < 32 KB, 137×177 → upload da foto concluído com sucesso.
  2. .jpg, < 32 KB, não 137×177 → erro de incompatibilidade de resolução.
  3. .jpg, ≥ 32 KB, 137×177 → erro de incompatibilidade de tamanho.
  4. .jpg, ≥ 32 KB, diferente de 137×177 → erro de incompatibilidade de tamanho e resolução.
  5. Não é .jpg, < 32 KB, 137×177 → erro de incompatibilidade de formato.
  6. Não é .jpg, < 32 KB, não tem 137×177 → erro de incompatibilidade de formato e resolução.
  7. Não é .jpg, ≥ 32 KB, 137×177 → erro de incompatibilidade de formato e tamanho.
  8. Arquivo não .jpg, ≥ 32 KB, não 137×177 → erro de incompatibilidade de formato, tamanho e resolução.

Por que o teste de tabela de decisão é importante

O teste de tabelas de decisão é importante porque testa diversas combinações de condições e oferece uma cobertura robusta para lógicas de negócios complexas. Quando o comportamento do sistema difere para cada conjunto de entradas, a técnica proporciona uma boa cobertura em uma representação simples e de fácil leitura.

In Engenharia de softwareA análise de valores de contorno e a partição de equivalência são técnicas semelhantes, mas são mais eficazes quando o sistema apresenta mesmo comportamento em um grande conjunto de entradas. Quando o comportamento é diferente Para cada combinação de entrada, essas técnicas não conseguem garantir uma boa cobertura — e o teste de tabela de decisão torna-se a melhor opção.

Esta tabela também serve como referência para o desenvolvimento de requisitos e funcionalidades, pois é fácil de entender e abrange todas as combinações. A importância aumenta conforme o número de entradas aumenta: o número de combinações possíveis é 2^n, onde n é o número de entradas. Para n = 10, o que é comum em formulários web, isso resulta em 1,024 combinações. Não é possível testar todas elas, mas você pode selecionar um subconjunto robusto usando testes baseados em decisão.

Vantagens do teste de tabela de decisão

  • Funciona quando o comportamento do sistema difere entre as entradas, situações em que a partição de equivalência e a análise de valores limite se mostram insuficientes.
  • A representação é simples, facilitando a interpretação e sendo útil tanto para equipes de desenvolvimento quanto para equipes de negócios.
  • Ajuda a criar combinações eficazes e garante uma melhor cobertura de testes.
  • Qualquer situação empresarial complexa pode ser transformada em uma tabela de decisão.
  • Pode garantir cobertura de 100% quando o número de combinações de entrada for baixo.

Desvantagens do teste de tabela de decisão

A principal desvantagem é que, à medida que o número de entradas aumenta, a tabela torna-se mais complexa e difícil de gerenciar.

Perguntas Frequentes

O teste de tabela de decisão é uma técnica de caixa preta que captura combinações de condições de entrada e suas saídas esperadas em uma tabela. Isso garante a cobertura sistemática de regras de negócios complexas.

Ela mapeia causas (condições de entrada) para efeitos (saídas do sistema). Capturar ambos os lados em uma única tabela torna a relação explícita, razão pela qual também é conhecida como tabela de causa e efeito.

O número de regras é igual a 2^n, onde n é o número de condições binárias. Por exemplo, 4 condições produzem 16 regras, e 10 condições produzem 1,024 combinações possíveis.

A análise de valores limite é adequada para entradas cujo comportamento é o mesmo em toda uma faixa de valores. As tabelas de decisão são adequadas para casos em que cada combinação de entrada produz uma saída diferente, oferecendo uma abrangência que as outras técnicas não conseguem atingir.

Use-o quando uma funcionalidade tiver várias condições de entrada que interagem para produzir diferentes resultados, como validação de login, envio de formulários ou regras de preços e descontos com diversas dependências.

À medida que o número de condições aumenta, a tabela se expande exponencialmente (2^n) e torna-se difícil de gerenciar. Os testadores geralmente selecionam um subconjunto representativo de regras em vez de testar todas as combinações.

As ferramentas de IA leem os requisitos e geram tabelas de decisão automaticamente, identificam regras ausentes ou redundantes e consolidam regras equivalentes. Isso reduz o esforço manual e, ao mesmo tempo, melhora a cobertura de combinações.

Sim. A IA pode converter cada regra em uma tabela de decisão em um caso de teste concreto com entradas e resultados esperados, priorizando-os por risco para que as combinações de alto impacto sejam testadas primeiro.

Resuma esta postagem com: