Teste da tabela de decisão - Como criar tabela - Vantagens e Importância

Índice:

Anonim

Introdução ao teste da tabela de decisão

O teste da tabela de decisão é usado para testar com diferentes combinações de entrada que resultam em diferentes saídas em um programa. O teste da tabela de decisão também é chamado de teste de efeito de causa. Essa é uma abordagem muito sistemática para o teste, onde capturamos combinações de entradas e suas saídas em um formato tabular. Essas tabelas são bastante precisas e compactas para modelar lógica complicada.

Em poucas palavras, o Decision Table Testing é uma técnica de teste de caixa preta em que criamos uma tabela de decisão para lógica de negócios complexa.

Por que as tabelas de decisão são tão importantes?

Você pode estar familiarizado com o teste de valor-limite e técnicas equivalentes de teste de partição, embora ambas sejam boas em fornecer cobertura, nenhuma delas será útil quando o comportamento do sistema for diferente para cada conjunto de entradas fornecido.

Criar uma tabela de decisão ajuda uma equipe de teste a projetar testes. Não apenas as tabelas de decisão são úteis na indicação de regras de negócios complexas, mas também são úteis para testadores que desejam entender como diferentes combinações de entradas afetam a saída.

Em muitas aplicações, o número de combinações de entrada pode ser grande; se esse for o caso do projeto em questão, testar essas combinações será um problema. Para casos como esses, a criação de uma tabela de decisão é uma das melhores maneiras de realizar um teste com boa cobertura.

Como você verá abaixo, o número da combinação possível é dado por 2 x, onde X é o número de entradas; nos casos em que X é um número grande (digamos 10 por exemplo), o número de combinações será muito alto para leve tudo isso em consideração. No entanto, ainda podemos pegar um subconjunto dessas combinações possíveis para criar uma árvore de decisão.

Como criar uma tabela de decisão para testes?

Agora que você já conhece o que é o teste de decisão, vamos criar uma tabela de decisão.

Etapa 1: Criando a primeira coluna da tabela, entendendo os requisitos.

Criaremos a primeira coluna da tabela, examinando o que precisamos testar. Para este exemplo, considere um exemplo de uma transação ATM. A seguir, estão suas condições e ações:

Condição
O valor do saque é menor ou igual ao saldo bancário
Crédito concedido
Açao
Pedido de retirada aceito

Etapa 2: Adicionando mais colunas.

Agora que a primeira coluna está pronta, calcularemos o número restante de colunas necessárias. Depende do número de condições disponíveis e também de quantas alternativas estão disponíveis para essas condições.

Matematicamente, o número de colunas é 2 x, em que X é o número de condições.

Para facilitar o teste, devemos criar tabelas de decisão menores e criar uma enorme. Uma vez feito o número de colunas, podemos preencher True ou False. Você pode preencher as células no seguinte padrão:

R1: TF

R2: TTFF

R3: TTTFFF

E assim por diante.

Depois de concluída, nossa tabela agora se parece com o seguinte:

Condição
O valor do saque é menor ou igual ao saldo bancárioTFTF
Crédito concedidoTTFF
Açao
Pedido de retirada aceito

Etapa 3: Diminuindo a tabela.

Podemos reduzir a tabela removendo quaisquer colunas duplicadas na tabela. Outras maneiras de reduzir a tabela estão verificando combinações inválidas na tabela; por exemplo, não há como alguém ser ambos, um homem e uma mulher em uma tabela de decisão.

Também teremos que marcar células com valores insignificantes com "-" Por exemplo, não importa se o crédito é concedido se o valor for <= Saldo da conta.

Condição
O valor do saque é menor ou igual ao saldo bancárioTFTF
Crédito concedido-T-F
Açao
Pedido de retirada aceito

Etapa 4: determinando as ações para a tabela.

Agora, com a ajuda de nossos requisitos, determinaremos as ações da tabela. Essas colunas serão nomeadas como R1 / Regra 1, R2 / Regra 2, etc.

Condição
O valor do saque é menor ou igual ao saldo bancárioTFF
Crédito concedido-TF
Açao
Pedido de retirada aceitoTTF

Etapa final: escrevendo os casos de teste

Agora que a tabela foi criada, reduzida e suas ações foram determinadas, podemos escrever casos de teste para a tabela. Para uma cobertura completa das regras de negócios, devemos escrever pelo menos um caso de teste para cada coluna

Por exemplo:

Caso de teste para R1: Saldo = 1000, Solicitação de retirada = 1000. Resultado: Solicitação de retirada aceita

Caso de teste para R2: Saldo = 500, Solicitação de retirada = 1000. Crédito concedido: Sim, Resultado: Solicitação de retirada aceita

Caso de teste para R3: Saldo = 1000, Pedido de retirada = 1500. Crédito concedido: Não, Resultado: Pedido de retirada negado

Vantagens do teste da tabela de decisão

  • Os testes da tabela de decisão são fáceis de interpretar e, portanto, são usados ​​para desenvolvimento e negócios.
  • Um teste da tabela de decisão ajuda a fazer combinações eficazes e, uma vez feito, pode fornecer uma melhor cobertura para o teste.
  • É bastante fácil transformar as condições de negócios em tabelas de decisão, mesmo que as condições sejam complexas por natureza.
  • Se a equipe de teste estiver buscando 100% de cobertura e o número de combinações de entradas for baixo, o Teste da Tabela de Decisão é uma das maneiras mais eficientes de realizar o trabalho.
  • O Teste de Decisão funciona onde a análise do valor limite e o particionamento equivalente não funcionam, isto é, quando o comportamento do sistema é diferente para entradas diferentes.

Conclusão

O teste da tabela de decisão é uma das técnicas eficazes de teste da caixa preta, enquanto as tabelas ficam mais complicadas com um número crescente de entradas, ele pode fornecer uma cobertura decente para situações em que outras técnicas não podem ser usadas.

Artigos recomendados

Este foi um guia para o teste da tabela de decisão. Aqui discutimos alguns conceitos, vantagem e importância do teste da tabela de decisão. Você também pode consultar nossos outros artigos sugeridos para saber mais -

  1. Teste da caixa branca
  2. Perguntas da entrevista sobre testes de ETL
  3. O que é teste de unidade
  4. Teste do sistema