Teste de Asserção

O que é teste baseado em asserção?

Uma asserção é uma expressão booleana em um ponto específico em um programa que será verdadeira a menos que haja um bug no programa. Uma asserção de teste é definida como uma expressão, que encapsula alguma lógica testável especificada sobre um alvo em teste.

Benefícios das afirmações:

A principal vantagem de ter asserções é identificar defeitos em um programa. A utilidade das afirmações inclui:

  • É usado para detectar erros sutis que podem passar despercebidos.

  • É usado para detectar erros logo após sua ocorrência.

  • Faça uma declaração sobre os efeitos do código que é garantidamente verdadeira.

Limitações de afirmação

Como qualquer outro trecho de código, as próprias asserções podem conter erros. Isso pode levar aos seguintes problemas:

  • Falha ao relatar um bug que existe.

  • Relatando um erro quando ele não existe.

  • Pode levar a outros efeitos colaterais

  • Pode demorar para ser executado se contiver erros e também ocupar memória.

Como as asserções podem bloquear o teste?

Se uma asserção está falhando devido a um ou outro motivo, a consequência da mesma pode ser severa. Uma afirmação pode elevar-se a uma pedra de tropeço, o que pode resultar na interrupção do teste por um dia inteiro. Algumas condições que desejamos testar podem ser conceitualmente simples, mas são muito difíceis de verificar na prática.