O GoConqr está de visual novo! Conte para nós o que você achou.

Notas

M7 #3 - Níveis de teste

Lucas Erikson Engenharia de Software Pós-Graduação Português 5 páginas

Conteúdo das notas (5)

Página 1

Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:

Definir os níveis de teste e o teste de sistema.

Diferenciar os níveis de teste de unidade e de integração.

Descrever os níveis de teste de aceitação e de regressão.

M7 #3 - Níveis de teste

Página 2

Os testes de software não têm um momento específico do projeto de

desenvolvimento de um sistema para acontecer. Eles devem ocorrer em

todos os estágios do ciclo de vida do projeto. A cada estágio do projeto,

são definidos níveis de teste. Cada um é responsável por testar elementos

específicos do software e validar determinados aspectos do software que

havia sido solicitado originalmente.

Neste capítulo, você vai estudar os níveis de teste. Além disso, vai

conhecer os testes de sistema, de unidade, de integração, de aceitação

e de regressão.

Os níveis de teste e o teste de sistema

Os testes de software são aplicados em diferentes estágios do projeto de

desenvolvimento do software. Eles exigem diferentes níveis de esforço de

trabalho tanto dos testadores como de toda a equipe do projeto. Basicamente,

existem três práticas para a realização dos testes de software

 Analistas diferentes daqueles que realizaram a implementação e a

codificação do software realizam os testes depois que uma funciona-

lidade é desenvolvida e antes que ela seja entregue ao usuário final. A

desvantagem dessa prática é que os testes podem ser realizados quando

o prazo de entrega do produto já está praticamente estourado. Isso pode

comprometer o tempo gasto com os testes e, pior ainda, com a correção

dos problemas encontrados nos testes.

 Os testes do software começam a ser realizados ainda no início do

projeto de desenvolvimento de software. Assim, as funcionalidades

são testadas à medida que são desenvolvidas, num processo contínuo.

 Na programação extrema, o modelo de desenvolvimento é orientado

às boas práticas da engenharia de software, sendo que uma delas é o

teste. A XP não encara o teste como uma perda de tempo e uma das

suas diretrizes básicas é a de que o teste deve ser feito constantemente,

o tempo todo.

Página 3

Em função do estágio ou do nível em que o processo de desenvolvimento

do software se encontra, é possível definir os seguintes níveis de testes:

 teste de unidade;

 teste de integração;

 teste de sistema;

 teste de aceitação;

 teste de regressão

Teste de sistema

No nível de teste de sistema, os analistas de teste, ou testadores, têm o propósito

de executar o sistema como um todo, levando em consideração a visão do

usuário final. Todas as funcionalidades do sistema são colocadas em operação.

Esse nível de teste tem a intenção de identificar problemas que diferenciem

o software entregue daquele software original, idealizado pelos usuários e do

qual havia sido feita a análise de requisito

Para a realização do teste de sistema, as atividades de teste precisam

ocorrer em condições completamente semelhantes àquelas em que o software

vai funcionar depois que tiver sido entregue ao usuário final. Essas condições

envolvem o ambiente, as interfaces com outros sistemas, os aspectos tecnológicos,

as massas de dados, o nível de experiência dos usuários e qualquer outro

aspecto que se relacione com a maneira como o software vai ser executado

quando estiver na sua realidade de negócio.

Além de testar o sistema como um todo, inserido em todas as condições e

ambientes em que ele será utilizado, outra grande oportunidade trazida pelo

nível de teste de sistema é a de realizar a validação da integração entre o sistema

que está sendo (ou foi) desenvolvido e outros sistemas que possam ser utilizados

juntamente a ele. Para a realização desse tipo de teste, em que se verifica a

integração entre sistemas como um todo, deve haver uma responsabilização

do gerente de projeto. Ele é que vai decidir se o teste precisa realmente ser

realizado e também em qual momento, uma vez que não há necessidade de

finalizar a codificação do sistema atual para que ele aconteça.

É comum que o nível do teste de sistema seja atingido e possa ser realizado

somente quando o software estiver totalmente codificado e funcionando de

maneira global, como um todo.

Página 4

Os níveis de teste de unidade e de integração

O nível de teste de unidade se relaciona com a validação de cada parte desenvol-

vida do software, normalmente realizada pelo próprio analista desenvolvedor.

O teste de integração, por sua vez, tem relação com a integração entre partes

do software já desenvolvidas, ou mesmo do software com outros sistemas

interdependentes.

Teste de unidade

O teste de unidade também é conhecido como teste unitário ou teste de módulo.

Nesse nível de teste, são testadas as menores partes em que um software pode

ser dividido. O propósito principal desse tipo de teste é realizar a validação

de chamadas de métodos, classes, funções, sub-rotinas e partes de código-fonte

que possam ser testadas de maneira isolada. Nesse sentido, a intenção

de um teste de unidade é identificar problemas em partes do software de

maneira independente, sem efetuar testes que vinculem essas partes a outras

Geralmente, quando um problema é encontrado no código ou na es-

trutura interna do software, ele é imediatamente corrigido, sem que seja

necessário documentar de maneira formal a discrepância encontrada. Uma

ligeira anotação é suficiente, apenas para que sirva de auxílio para os

desenvolvedores não repetirem os erros encontrados enquanto codificam

o restante do sistema.

Normalmente, o analista responsável pelos testes de unidade utiliza os

seguintes documentos como auxílio na realização dos teste

 documento de especificação de requisitos do software;

 documento de caso de uso;

 documento de arquitetura do software (DAS)

O documento de arquitetura do software define uma visão geral a respeito da ar-

quitetura do sistema do software. Ele tem o papel de estabelecer uma comunicação

entre o arquiteto do software e os demais membros da equipe do projeto. Além disso,

descreve toda e qualquer decisão significativa a respeito da arquitetura idealizada

para o software

De posse desses três documentos, pelo menos, o analista testador pode

elaborar cenários de testes unitários, que devem ser testados por ele. O teste

unitário é aquele que foca o esforço do testador em partes menores do sof-

tware que têm a possibilidade de serem testáveis.

Página 5

Teste de integração

O nível do teste de integração tem como diferença principal do teste de unidade

o fato de o seu propósito ser o de encontrar problemas gerados pela integração

interna entre os componentes ou partes do software. É normal que, por meio

do teste de integração, sejam encontrados problemas de transmissão de dados

O teste de integração também é o responsável por identificar grande parte

dos problemas relacionados à interface do sistema. Em contrapartida, é in-

teressante frisar que os problemas se relacionam à interface do software que

está sendo desenvolvido atualmente, e não a outros sistemas que porventura

façam integração com ele.

Esse tipo de teste, em que se integram o sistema atual e outros que possam

ser utilizados por ele, são foco do nível de teste chamado de teste de sistema.

Por meio do teste de integração, é possível garantir que os componentes

que fazem parte do modelo que foi implementado funcionam de maneira

adequada quando são combinados com outros componentes, de outros casos

de uso. O propósito do teste de integração é formar um pacote ou grupos de

pacotes que contenham modelos de implementação. Esses pacotes arruma-

dos em grupo normalmente são de várias partes do código desenvolvido,

inclusive de outros sistemas. Por isso, o teste de integração está num nível

em que pode detectar problemas, como erros, falhas ou defeitos, na própria

interface do software.

Informações

Descrição
Pós-Graduação Engenharia de Software Notas sobre M7 #3 - Níveis de teste , criado por Lucas Erikson em 31-10-2022.
Criado por
Lucas Erikson · out 2022
Atualizado
31 out 2022
Visualizações
0
Avaliação

Fale Conosco

Sobre o que é sua mensagem?

O que você acha do novo visual?

Você gostou?