← Technical Test Analyst: código, carga e fiabilidade
02 / 8 · 40 MIN

Cobertura lógica white-box

Distingue instruções, decisões e efeito independente de condições.

Conceito e mecanismo

Executar uma linha não significa verificar todos os seus resultados lógicos. Se uma condição opcional acrescenta uma comissão e não tem else, um teste que entra nesse ramo pode executar todas as instruções sem observar a decisão falsa. Para avaliar cobertura, define o objeto, o critério e o denominador: instruções executáveis, resultados de decisão ou combinações. Num exemplo abstrato sem curto-circuito, a decisão A AND B pode ser verdadeira com TT e falsa com FF. Esses dois vetores cobrem resultados da decisão, mas não demonstram o efeito independente de cada condição. Acrescentar TF e FT permite comparar TT com FT para A e TT com TF para B. Estes pares explicam a intenção de MC/DC.

Aplicação guiada

Para três condições booleanas independentes, o espaço completo contém oito combinações; isso não significa que sejam todas viáveis num programa concreto. Condições repetidas ou relacionadas podem impedir certas alterações independentes. O curto-circuito também muda quais expressões são efetivamente avaliadas, por isso distingue uma tabela lógica abstrata do relatório de uma ferramenta. O gcov oferece cobertura de condições com instrumentação própria e descreve uma variante masking de MC/DC; não equipares automaticamente qualquer relatório de branches a essa medida. A cobertura ajuda a localizar lacunas, mas depende do código existente e não encontra por si só comportamento omitido do programa. Combina-a com testes baseados em requisitos e revê justificações de código inacessível antes de o excluir da medição.

NA PRÁTICA

TT, TF e FT demonstram o efeito independente das duas condições de A AND B no modelo abstrato.

Armadilhas comuns

Linha como decisão; branches como MC/DC; percentagem como correção.

Tópicos relacionados: Risco técnico e evidência operacional · Análise estática e dinâmica · Desempenho e perfil de carga

Leva esta ideia contigo

Explica o critério antes de interpretar a percentagem.

Criar conta

Referência: GCC gcov invocation and coverage metrics · CTAL-TTA v4.0 (2021)

ISTQB® é uma marca registada de International Software Testing Qualifications Board. A dr.pt é uma plataforma de preparação independente e não está afiliada, associada, patrocinada, autorizada nem aprovada por ISTQB. Os conteúdos e as perguntas são originais, não são perguntas oficiais de exame, e concluir os nossos testes não atribui nem garante qualquer certificação. Os nomes são usados apenas para identificar o tema. Todas as outras marcas pertencem aos respetivos titulares.