Engenharia de Software
Definição
“O teste é destinado a mostrar que um programa faz o que é proposto a fazer e para descobrir os defeitos do programa antes do uso. Quando se testa o software, o programa é executado usando dados fictícios. Os resultados do teste são verificados à procura de erros, anomalias ou informações sobre os atributos não funcionais do programa.
“Os teste podem mostrar apenas a presença de erros, e não sua ausência.”
Teste de software
Objetivos
O processo de teste tem dois objetivos distintos:
1. Demonstrar ao desenvolvedor e ao cliente que o software atende a seus requisitos. Para softwares customizados, isso significa que deve haver pelo menos um teste para cada requisito do documento de requisitos. Para softwares genéricos, isso significa que deve haver testes para todas as características do sistema, além de suas combinações, que serão incorporadas ao release do produto. 2. Descobrir situações em que o software se comporta de maneira incorreta, indesejável ou de forma diferente das especificações. Essas são consequências de defeitos de software. O teste de defeitos preocupa-se com a eliminação de comportamentos indesejáveis do sistema, tais como panes, interações indesejáveis com outros sistemas, processamentos incorretos e corrupção de dados. Teste de software
Um modelo de entrada-saída de teste de programa
Entradas que causam comportamento anômalos
Entrada de dados de teste
Ie
Sistema
Saídas que revelam defeitos
Saída de resultados de teste
Oe
Teste de software
Testes de inspeção
Inspeções
Especificação de requisitos
Arquitetura de software
Modelos de projeto em UML
Protótipo de sistema
Esquemas de banco de dados
Programa
Teste
Teste de software
Testes de inspeção - Vantagens
Existem três vantagens da inspeção de software sobre os testes:
1. Durante o teste, erros podem mascarar (esconder) outros erros. Quando um erro conduz saídas