Continuando os resumos do syllabus para a CTFL:
O segundo capítulo aborda informações sobre os níveis de testes, tipos de testes e teste de manutenção. Abaixo, segue uma breve descrição e resumo sobre cada item:
Níveis de Testes
Teste de Componentes
- Os testes de componentes ocorrem com acesso direto ao código;
- Verifica o funcionamento do software através de módulos, objetos, classes, e são testados separadamente;
- Envolve o desenvolvedor;
- A correção geralmente é realizada no momento da identificação do defeito, e não há documentação ou registros formais de incidentes;
- TDD (Test Driven Development);
Teste de Integração
- Testa-se a interface entre os componentes, interações de diferentes partes de um sistema;
- Testar a integração entre os diferentes componentes do software, e geralmente é realizado após os testes de componentes;
- Teste de integração para verificar as interações entre diferentes sistemas. Pode ser realizado após os testes de sistemas;
- Quanto maior o escopo de testes de integração, maior será a dificuldade para encontrar e isolar o defeito;
Teste de Sistema
- Refere-se ao comportamento de todo o sistema, definido pelo escopo do projeto;
- O ambiente de teste deve simular ao máximo o ambiente de produção;
- Podem ser baseados em: especificação de riscos, ou requisitos, processos de negócios e casos de uso;
Teste de Aceite
- Frequentemente é de responsabilidade do usuário;
- Estabelecer confiança no sistema;
Formas de teste de aceite:
- Teste de aceite do usário;
- Teste operacional de aceite;
- Teste de aceite de contrato e regulamento;
- Alfa e Beta Teste;
Tipos de Testes
Teste de função (teste funcional)
- Testes baseados nas funções descritas em documentos;
- Pode ser realizado em todos os níveis de teste;
- Considera o comportamento externo do software (caixa-preta);
Técnicas de teste funcional:
- teste de controle;
- teste de interconexão;
- teste paralelos;
- teste de requisitos;
- teste de regressão;
- teste de suporte manual;
- teste de tratamento de erros;
Teste de características do produto de software (testes não funcionais)
- É o teste de "como" o sistema trabalha;
- Pode ser realizado em todos os níveis de teste;
- Medir as características;
- Modelo de qualidade: ISO 9126
Técnicas de teste não funcional:
- teste de performance;
- teste de carga;
- teste de estresse;
- teste de usabilidade;
- teste de interoperabilidade;
- teste de manutenibilidade;
- teste de confiabilidade;
- teste de portabilidade;
Teste de estrutura (teste estrutural)
- Caixa-branca;
- Pode ser feito em todos os níveis de teste;
- Baseado na arquitetura do sistema;
Teste relacionado a mudanças (teste de confirmação e regressão)
- O teste de confirmação certifica que um defeito encontrado foi realmente resolvido e removido;
- Teste de regressão: teste repetido de um sistema, após sua modificação, para descobrir a existência de algum defeito que pode ser originado;
- Realizado quando o software ou ambiente é modificado;
- Forte candidato a automação;
- Podem ser realizados em todos os níveis de testes;
Teste de Manutenção
- Após o sistema ser desenvolvido e estar disponível em produção, o mesmo poderá sofrer manutenções periódicas, seja para acrescentar melhorias, ou para corrigir defeitos não detectados anteriormente;
- Além de ser testada a modificação realizada no software, o teste de manutenção inclui testes massivos de regressão;
- O escopo do teste está diretamente relacionado com os riscos que a versão de melhoria ou corretiva poderá causar;