Tipos de testes de software
Esse artigo faz parte da categoria de artigos conceituais e descreve os tipos de testes de software. Em outro artigo havia escrito sobre as fases de testes, e acredito que esse novo artigo contribua para o correto entendimento de conceitos fundamentais sobre testes.
Cada tipo de teste tem foco em um objetivo particular, por exemplo:
- em uma funcionalidade, a ser realizada pelo software;
–em uma característica da qualidade não-funcional, como a confiabilidade ou usabilidade,
–a estrutura ou arquitetura do software ou sistema;
– efeitos colaterais de mudanças ocorridas em partes do software, sobre as partes que não houveram mudanças.
São quatro os tipos de testes de software:
Testes funcionais: As funções realizadas por um software, que representam o que ele faz, podem ser descritas pelos seguintes produtos de trabalho: especificação de requisitos; casos de uso, especificação funcional, ou podem não estar documentados.
Os testes funcionais são baseados em funções, e devem ser realizados em todas as fases de testes. O teste funcional considera o comportamento externo do software (teste de caixa-preta).
Testes não funcionais:Os testes não-funcionais exploram o “ como “ o sistema trabalha e podem ser um dos seguintes tipos:performance; carga ou estresse; usabilidade; interoperabilidade; manutenibilidade; confiabilidade; portabilidade.
Os testes não funcionais podem ser realizados em todas as fases de teste. O termo teste não funcional descreve que o teste é executado para medir as características que podem ser quantificadas em uma escala variável, como o tempo de resposta em um teste de performance.
Testes estruturais
São tipos de testes estruturais:
O debug que visa achar a causa raiz de um defeito e entender o comportamento de uma aplicação através de execução passo-a-passo.
O “teste estrutural de execução” é a execução de código instrumentado e a análise de dados coletados com o propósito de encontrar erros e melhorar a qualidade e confiabilidade do software.
Testes de regressão
Consiste em se aplicar, a cada nova versão do software ou a cada ciclo, todos os testes que ja foram aplicados nas versões ou ciclos de teste anteriores do sistema.
Para efeito de aumento de produtividade e de viabilidade dos testes, é recomendada a utilização de ferramentas de automação de testes, de forma que, sobre a nova versão ou ciclo de teste, todos os testes anteriores possam ser reexecutados com maior agilidade
Related posts:
- Como elaborar em seis passos uma boa estratégia para testes funcionais de software?
- Seis dicas para preparação de massa de dados para testes funcionais
- Saiba quais são as fases dos testes de software
- Ferramentas open-source para testes de software – uma visão geral
- Material referência sobre testes de software (em português!)
Muito bom artigo!
Como a área de testes vem tendo um grande crescimento ultimamente, julgo muito importante a divulgação de artigos básicos para apoiar os iniciantes na área, como eu por exemplo.
Obrigado.