Teste de cobertura de decisão

O que é o Teste de Cobertura de Decisão?

A cobertura de decisão ou cobertura de ramo é um método de teste que visa garantir que cada um dos ramos possíveis de cada ponto de decisão seja executado pelo menos uma vez e, assim, garantir que todo o código alcançável seja executado.

Ou seja, toda decisão é tomada em cada sentido, verdadeiro ou falso. Ajuda a validar todas as ramificações do código, certificando-se de que nenhuma ramificação leve a um comportamento anormal do aplicativo.

Exemplo:

Read A
Read B 
IF A+B > 10 THEN 
  Print "A+B is Large" 
ENDIF 
If A > 5 THEN 
  Print "A Large"
ENDIF

A lógica acima pode ser representada por um fluxograma como:

Resultado:

To calculate Branch  Coverage, one has to find out the minimum number of paths which will ensure that all the edges are covered. In this case there is no single path which will ensure coverage of  all the edges at once. The aim is to cover all possible true/false decisions.
(1) 1A-2C-3D-E-4G-5H
(2) 1A-2B-E-4F
Hence Decision or Branch Coverage is 2.