Teste Funcional
Vantagens
Pode ser utilizado em todas as fases de teste
Independente do paradigma de programação
Eficaz em detectar determinados tipos de defeitos
É possível encontrar pontos fracos e incompletos da especificação
Desvantagens
Não é possível garantir que partes essenciais ou críticas do software sejam executadas
Difícil quantificar a atividade de teste
Dependente de uma boa especificação
Dificuldade em automatizar a geração de casos de teste
Critérios de testes funcionais
Análise do valor limite
Grafo causa-efeito
Particionamento em classe de equivalência
Identificar as classes de equivalência
Definir os casos de teste para cobrir essas classes
Diretrizes para identificar as classes de equivalência
Estabelece um conjunto de valores que devem ser tratados de diversas maneiras
Determina uma condição lógica
Estabelece um intervalo de valores ou uma quantidade de valores
Gerar o Grafo Causa-Efeito
Aprimorar o grafo, considerando combinações de causas e efeitos que são impossíveis
Identificar as causas e efeitos na especificação e atribuir número único para cada
Converter o grafo em uma tabela de decisão
Dividir a especificação em partes
Converter as regras da tabela de decisão em casos de teste