Teste de verificação
O ato de efetuar testes em tudo que construímos e usamos é algo natural do ser humano, isso porque temos um instinto natural de saber se as coisas funcionam corretamente. Testar tem se mostrado ao longo dos séculos a maneira mais eficiente de verificar se algo está se comportando de forma correta. Produtos de software não fogem a esta regra. Isso porque mesmo o sistema que foi minunciosamente projetado e construído não está livre de apresentar falhas, defeitos e erros. Para que estes problemas sejam descobertos antes do sistema ser entregue para o cliente, executamos uma série de atividades que chamamos de Validação, Verificação e Teste.
Estes termos são frequentemente confundidos, por isso vamos ver agora a diferença entre cada um destes processos:
1. Verificação: Fizemos o software corretamente?
Esta atividade se resume em responder a esta pergunta. A verificação tem o objetivo de avaliar se o que foi planejado realmente foi realizado. Ou seja, se os requisitos e funcionalidades documentados foram implementados, além disso a verificação também pode ser realizada para especificação de sistemas, para avaliar se os requisitos estão sendo documentados como deveriam e ainda prever falhas ou inconsistências entre requisitos.
2. Validação: Fizemos o software correto?
A validação tem o objetivo de avaliar se o que foi entregue atende as expectativas do cliente. Ou seja, se os requisitos, independente do que foi planejado, estão sendo implementados para atender a regra de negócio do cliente, se o sistema é realmente aquilo que o cliente quer e está pagando para ter. A validação final do sistema é realizada pelo próprio cliente ou usuário.
3. Teste de Software: O software tem defeitos!
O teste de software é considerado uma técnica dinâmica de verificação e validação, pois o software é executado com dados de teste e seu comportamento é analisado. Diferentemente da inspeção de software ou,