quarta-feira, 28 de julho de 2010

Resumo livro BCTS: Capítulo 7 – Execução dos testes

Capítulo 7 – Execução dos testes


 Segundo Cem Kaner:
 
No teste estático, o código é examinado.
No teste dinâmico, o código é testado.
 
Conforme já definido, os testes devem ser executados em todas as etapas do ciclo de vida do processo de desenvolvimento de software, desde os requisitos até o teste de aceitação, na fase de homologar e liberar o software para a produção. O projeto de teste deve ser desenvolvido em paralelo e estar integrado ao projeto de desenvolvimento.
 
A responsabilidade de cada um na execução dos testes devem ser documentadas no Plano de Teste. Por exemplo, os programadores ou desenvolvedores sãoresponsáveis pela execução dos testes unitários, ao passo que os testadores são os responsáveis pela execução dos testes de sistema.

 
Responsáveis pelos testes:

 
• Testes Unitários -- Programadores
• Testes de Integração -- Analistas de Sistemas
• Testes de Sistema -- Analistas de Testes
• Testes de Aceitação -- Usuários com a ajuda dos Analistas de Testes.

 
O plano de teste deve incluir todos os elementos necessários para que os testes sejam executados corretamente. Como elementos podemos considerar os procedimentos a serem cumpridos, o ambiente necessário e as ferramentas.

 
1.1. Teste Unitário

 
Os testes unitários devem ser feitos pelos programadores e garantir o funcionamento adequado do programa.

 
1.2. Teste de Integração

 
O teste de integração deve ter início quando os componentes a ser integrados já tenham passado pelo teste unitário. Esse tipo de teste deve ser executado pelo Analista de Sistemas, restando ao Analista de Teste a responsabilidade de testar o sistema.
 
O teste de integração deve garantir que os componentes da aplicação, ou daquele módulo de aplicação, possam ser integrados com sucesso para executar determinada funcionalidade.
 
Considerando as aplicações cliente/servidor, o teste de integração deve levar em conta as seguintes camadas:

 
• Camada de apresentação;
• Camada de execução;
• Camada de dados;
• Camada de rede.

1.3. Teste de Sistema

 
O teste de sistema deverá ter início apenas quando o teste de integração for dado como encerrado, ou seja, executado com sucesso. Por outro lado, o teste de sistema será dado como terminado quando a equipe de teste perceber que a aplicação está apta a ser liberada para a produção.
 
Para o sucesso na execução dos testes de sistema, algumas atividades devem ser seguidas:
 
• O ambiente de teste deve ser semelhando ao de produção;
• Devem ser criados casos de teste, de preferência com uso de ferramentas;
• Devem ser definidos os casos de testes que serão executados;
• Preparar os scripts ou procedimentos a serem seguidos pelos testadores;
• Avaliar os resultados e identificar problemas encontrados;
• Registrar defeitos, de preferências em um sistema de gestão de defeitos;
• Re-testar defeitos corrigidos. Fechar ou reabri o defeito, se não corrigido;
• Garantir que os ciclos de testes foram cumpridos.
 
O teste de sistema precisa garantir que os requisitos do software foram cumpridos, e implementados corretamente. Posteriormente, a aplicação ainda passará pelo teste de aceitação, que será conduzido pelos próprios usuários com o apoio da equipe de teste.

 
1.4. Teste de Aceitação

 
O teste de aceitação é realizado pelos usuários ou gestores do software para garantir que tudo que foi definido por eles nos requisitos tenha sido incluído no produto que lhes está sendo entregue. Muitas vezes recebem auxílio dos testadores.

 
1.5. Quando o teste termina?
 
Algumas métricas podem auxiliar o gerente de teste a tomar a decisão de liberar ou não a aplicação para produção. Podemos destacar:
 
• Tempo médio entre defeitos encontrados;
• Porcentagem de cobertura alcançada na aplicação do teste;
• Número de defeitos encontrados e ainda não corrigidos por grau de severidade;
• Avaliar os riscos envolvidos com a liberação da aplicação para produção, comparando tias riscos com os riscos da não-liberação.

 
1.6. Considerações

 
Existem algumas considerações ou preocupações que os testadores devem sempre levar em conta durante a execução dos testes:

 
• O software ainda não está em condições de ser testado adequadamente;
• Os recursos ou o prazo são insuficientes;
• Problemas importantes não serão revelados durante os testes;
• Atenção com o que vai ser testado.

1.7. Processo de execução de testes
 
Para que seja bem sucedida, a etapa de execução dos testes, dentro do ciclo de vida dos testes, vai depender de tudo que foi feito anteriormente e que servirá de base para o cumprimento dessa etapa.
 
Um pré-requisito para o início desta etapa é o Plano de Teste.
 
1.7.1. Teste segundo as características de qualidade de software

 
Tendo como base algumas características ou sub-características da norma ISO 9126-1, listamos alguns tipos de testes que se enquadram para atender as características listadas:

  •  Funcionalidade
    • Teste de Autorização;
    • Teste de Integridade dos arquivos;
    • Teste de Trilha de auditoria;
    • Teste de Conformidade com a metodologia;
    • Teste Negativo
  •  Continuidade
    • Teste de Recuperação;
  • Segurança
    • Teste de Segurança
  • Performance
    • Teste de Estresse;
    • Teste de Performance;
  • Usabilidade
    • Teste Manual;
  • Manutenibilidade
    • Inspeções
  • Portabilidade
    • Teste de Desastre;
  • Conectividade
    • Teste de Regressão;
    • Teste de Conexão;
  • Operacionalidade
    • Teste Operacional.

 
Posts relacionados:
 

Nenhum comentário:

Postar um comentário