Disciplinas > Teste > Conceitos > Estágios de Teste

Normalmente, o teste é aplicado a diferentes tipos de objetivos em diferentes estágios ou níveis de esforço de trabalho. Esses níveis distinguem-se normalmente pelos papéis mais habilitados para projetar e conduzir os testes, e pelas técnicas mais apropriadas para o teste em cada nível. É importante garantir que um equilíbrio de foco seja mantido nesses diferentes esforços de trabalho.

Teste do Desenvolvedor Início da página

O Teste do Desenvolvedor denota os aspectos de design e implementação de teste mais apropriados para a equipe de desenvolvedores que projetou e implementou o software. Faz contraste com o Teste Independente. Na maioria dos casos, a execução do teste ocorrerá inicialmente com o grupo de teste do desenvolvedor que projetou e implementou o teste, mas os desenvolvedores criam seus testes de maneira que fiquem disponíveis aos grupos de teste independente para execução.

Tradicionalmente, o teste do desenvolvedor foi projetado principalmente em termos de teste unitário, com níveis variáveis de ênfase no teste de integração—dependendo muito da cultura e outras questões contextuais—com ênfase menos freqüente em outros aspectos do teste. Essa abordagem tradicional apresenta riscos à qualidade do software nessas importantes questões de teste, que geralmente surgem na fronteira dessas distinções e costumam ser ignoradas pelos diferentes grupos destinados a enfatizar cada "nível".

A melhor abordagem consiste em dividir o esforço de trabalho para que haja uma sobreposição planejada. A natureza exata dessa sobreposição baseia-se nas necessidades do projeto individual. É recomendável criar um ambiente em que o desenvolvedor e os testadores independentes compartilhem uma única visão de qualidade. Consulte Conceitos: Teste do Desenvolvedor para obter informações adicionais.

Teste Independente e dos Envolvidos Início da página

O Teste Independente denota o design e a implementação de teste mais apropriados para alguém independente da equipe de desenvolvedores. Essa distinção pode ser considerada um superconjunto que inclui Verificação Independente & Validação. Na maioria dos casos, a execução do teste ocorrerá inicialmente com o grupo de teste independente que projetou e implementou o teste, mas os testadores independentes devem criar seus testes de maneira que fiquem disponíveis aos grupos de teste do desenvolvedor para execução.

Uma visão alternativa desse teste independente é que ele representa o teste realizado com base nas necessidades e problemas de vários envolvidos, por isso é chamado de Teste dos Envolvidos. Essa é uma distinção importante: ajuda a incluir um conjunto de problemas do envolvido maior que o conjunto considerado tradicionalmente como, por exemplo, equipe de suporte técnico, instrutores técnicos, equipe de vendas, além de clientes e usuários finais.

Como comentário final, a noção de testes do cliente do XP está relacionada a essa categorização de teste independente no RUP.

Teste Unitário Início da página

O teste unitário é uma distinção mais tradicional. Implementado logo no início da iteração, ele se concentra na verificação dos menores elementos testáveis do software. O teste unitário normalmente é aplicado a componentes do modelo de implementação para verificar se os fluxos de controle e de dados estão cobertos e funcionam conforme o esperado. Essas expectativas baseiam-se em como o componente participa da execução de um caso de uso, encontrada em diagramas de seqüência para esse caso de uso. O Implementador executa o teste unitário durante o desenvolvimento da unidade. Os detalhes do teste unitário são descritos na disciplina Implementação.

Teste de Integração Início da página

Uma distinção tradicional, o teste de integração é executado para garantir que os componentes do modelo de implementação funcionem corretamente quando combinados para executar um caso de uso. O objetivo do teste é um pacote ou conjunto de pacotes do modelo de implementação. Em geral, os pacotes que estão sendo combinados são provenientes de diferentes organizações de desenvolvimento. O teste de integração detecta imperfeições ou erros nas especificações da interface do pacote.

Teste do Sistema Início da página

Uma distinção tradicional, o teste do sistema normalmente é realizado quando o software está funcionando totalmente. Um ciclo de vida iterativo permite que o teste do sistema ocorra muito mais cedo, assim que os subconjuntos bem formados do comportamento do caso de uso são implementados. Geralmente, o objetivo é o funcionamento dos elementos do sistema de ponta a ponta.

Teste de AceitaçãoInício da página

O teste de aceitação do "Usuário" normalmente é a ação de teste final anterior à implantação do software. O objetivo do teste de aceitação é verificar se o software está pronto e pode ser usado pelos usuários finais para executar as funções e as tarefas para as quais o software foi criado. Consulte Conceitos: Teste de Aceitação para obter informações adicionais.

Há outras noções de teste de "aceitação", geralmente caracterizadas por uma entrega de um grupo ou equipe para outro. Por exemplo, um teste de aceitação de build é o teste realizado para aceitar o encaminhamento de um novo build de software do desenvolvimento para o teste independente.



Copyright  © 1987 - 2001 Rational Software Corporation


Exibir o Rational Unified Process usando quadros

Rational Unified Process