Por que eu devo ler este artigo: O teste de integração é a fase do teste de software em que módulos são combinados e testados em grupo. Estes testes ocorrem após a realização de todos os testes unitários e antecede os testes de sistema. O propósito do teste de integração é verificar os requisitos funcionais, de desempenho e de confiabilidade na modelagem do sistema. Com ele é possível descobrir erros de interface entre os componentes do sistema. Este discute cada uma das estratégias de teste de integração que podem ser utilizadas no mercado com seus pontos fortes e fracos, passando alguns exemplos e aplicações. Ao final, é apresentado um exemplo de aplicação de teste de integração em uma arquitetura Hibernate para um banco de dados MySQL.

Um ponto relevante quando se está desenvolvendo software é decidir quando testar e como testar o software ou as partes geradas ao longo de seu desenvolvimento. A escolha do escopo do teste e o momento de aplicar estes testes é muito importante.

O escopo do teste indica o que é de interesse testar, que pode ser desde o código, uma classe, uma função, um pacote, um serviço ou todo o sistema. Estas escolhas estão normalmente associadas a diferentes fases dos testes: unidades, os testes de integração, os testes sistema e os testes de aceitação.

Estas fases estão mais visíveis na Figura 1, que exemplifica como elas podem ser encontradas em um processo de software.

Figura 1. Modelo “V” (Fases do Desenvolvimento X Fases dos Testes).

Este modelo “V” é uma variação do ciclo de vida cascata, que demonstra como as atividades de desenvolvimento de sistemas se relacionam com as atividades de testes. Segue uma descrição destas atividades de teste:

· Testes Unitários: tem por objetivo verificar cada unidade que compõe o software, isoladamente, para determinar se cada uma delas realiza o que foi especificado. A unidade é definida como um componente de software que não pode ser dividido. Nesta fase as categorias de testes aplicáveis são: teste em estruturas internas, teste de funcionalidade, teste de segurança;

· Testes de Integração: têm por objetivo encontrar falhas de integração entre as unidades, e não mais em testar as funcionalidades da mesma. Nesta fase as categorias de testes aplicáveis são: testes de interface, testes de dependências entre os componentes;

· Testes de Sistema: consiste na realização de vários tipos de teste que visam determinar se os componentes de um sistema computacional (envolvendo outros componentes de software e/ou de hardware) se integram bem e realizam as funcionalidades que lhes foram especificadas. Nesta fase as categorias de testes aplicáveis são: testes funcionais e testes não funcionais (performance, instalação, recuperação e carga);

· Testes de Aceitação: o objetivo dos testes de aceitação é determinar se o software funciona da maneira esperada, conforme consta na especificação dos requisitos. Dessa forma, critérios baseados na especificação devem ser empregados para determinar se requisitos (funcionais e não funcionais) foram devidamente satisfeitos. Nesta fase as cat ...

Quer ler esse conteúdo completo? Seja um assinante e descubra as vantagens.
  • 473 Cursos
  • 10K Artigos
  • 100 DevCasts
  • 30 Projetos
  • 80 Guias
Tenha acesso completo