Buscar

Testes no Desenvolvimento de Software

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 17 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO DE DESENVOLVIMENTO DE SOFTWARE 
AULA 5AULA 5AULA 5
Prof. MARCELO VASQUESProf. MARCELO VASQUESProf. MARCELO VASQUES
mvasqueso@gmail.commvasqueso@gmail.com
1AULA 1 – Prof. MARCELO VASQUES 1
OBJETIVOS DA AULAOBJETIVOS DA AULAOBJETIVOS DA AULAOBJETIVOS DA AULA
§ Conhecer as atividades de Testes do § Conhecer as atividades de Testes do § Conhecer as atividades de Testes do 
processo de desenvolvimentoprocesso de desenvolvimentoprocesso de desenvolvimento
§ Entender as necessidades da etapa de teste § Entender as necessidades da etapa de teste § Entender as necessidades da etapa de teste 
na melhoria da qualidade do sistemana melhoria da qualidade do sistemana melhoria da qualidade do sistema
§ Analisar os diversos tipos de testes§ Analisar os diversos tipos de testes§ Analisar os diversos tipos de testes
2
AS FASES DO PROCESSO AS FASES DO PROCESSO AS FASES DO PROCESSO AS FASES DO PROCESSO 
Concepção
Requisitos
Concepção
Requisitos
ImplementaçãoImplementação
ImplantaçãoImplantação
Análise Testes Desenho Análise Testes Desenho Análise Testes Desenho
ManutençãoManutenção
3
O CICLO DE VIDAO CICLO DE VIDAO CICLO DE VIDAO CICLO DE VIDA
ConcepçãoConcepção
RequisitosRequisitosRequisitos
Análise Análise Análise 
DesenhoDesenho
ImplementaçãoTestes ImplementaçãoTestes
• Onde estão os erros?• Onde estão os erros?• Onde estão os erros?
ImplantaçãoImplantaçãoImplantação
ManutençãoManutenção
4
1ª. DEFINIÇÃO DE TESTE1ª. DEFINIÇÃO DE TESTE1ª. DEFINIÇÃO DE TESTE1ª. DEFINIÇÃO DE TESTE
• A fase de teste tem como objetivo detectar • A fase de teste tem como objetivo detectar • A fase de teste tem como objetivo detectar 
possíveis defeitos ou erros que possam possíveis defeitos ou erros que possam possíveis defeitos ou erros que possam 
surgir NA da fase de implementação. surgir NA da fase de implementação. surgir NA da fase de implementação. 
• Nessa fase, DE TESTES deve-se coletar • Nessa fase, DE TESTES deve-se coletar • Nessa fase, DE TESTES deve-se coletar 
os resultados e analisá-los E os resultados e analisá-los E os resultados e analisá-los E 
CONSERTÁ-LOS antes de sua CONSERTÁ-LOS antes de sua CONSERTÁ-LOS antes de sua 
implantação. implantação. implantação. 
• Fase fundamental, muitas vezes rel2gada a • Fase fundamental, muitas vezes rel2gada a • Fase fundamental, muitas vezes rel2gada a 
segundo plano ou mesmo esquecida àsegundo plano ou mesmo esquecida àsegundo plano ou mesmo esquecida à
Incremento na QUALIDADE, na medida Incremento na QUALIDADE, na medida Incremento na QUALIDADE, na medida 
em que avaliamos sob várias óticas.em que avaliamos sob várias óticas.em que avaliamos sob várias óticas.
5
1ª. DEFINIÇÃO DE TESTE1ª. DEFINIÇÃO DE TESTE1ª. DEFINIÇÃO DE TESTE1ª. DEFINIÇÃO DE TESTE
66
FASE: TESTESFASE: TESTESFASE: TESTES
• Objetivo: encontrar erros não descobertos• Objetivo: encontrar erros não descobertos
– Bem sucedido: Acha erro não previsto– Bem sucedido: Acha erro não previsto
– É preciso usar o produto– É preciso usar o produto
• Análise e verificação de todos os• Análise e verificação de todos os
componentes do sistema.componentes do sistema.componentes do sistema.
– Validar se estão em conformidade com os– Validar se estão em conformidade com os– Validar se estão em conformidade com os
requisitos anteriormente definidos.requisitos anteriormente definidos.
– Para uma melhor analise, o teste deve ser feito– Para uma melhor analise, o teste deve ser feito– Para uma melhor analise, o teste deve ser feito
por uma equipe independente, diferente dapor uma equipe independente, diferente da
equipe desenvolvedora.equipe desenvolvedora.equipe desenvolvedora.
7
MODALIDADES DE TESTESMODALIDADES DE TESTESMODALIDADES DE TESTES
• Classificação quanto ao uso do código• Classificação quanto ao uso do código• Classificação quanto ao uso do código
– Testes estáticos ou Verificações– Testes estáticos ou Verificações– Testes estáticos ou Verificações
• ANTES da implementação• ANTES da implementação
• Inspeções, revisões, auditorias• Inspeções, revisões, auditorias• Inspeções, revisões, auditorias
• Testes nas fases iniciais – qualidade• Testes nas fases iniciais – qualidade• Testes nas fases iniciais – qualidade
• Qualidade no processo• Qualidade no processo• Qualidade no processo
– Testes dinâmicos ou Validações– Testes dinâmicos ou Validações– Testes dinâmicos ou Validações
• DURANTE OU APÓS a implementação• DURANTE OU APÓS a implementação• DURANTE OU APÓS a implementação
• Precisa de parte ou todo sistema encarnado• Precisa de parte ou todo sistema encarnado• Precisa de parte ou todo sistema encarnado
• Qualidade no produto• Qualidade no produto• Qualidade no produto
8
MODALIDADES DE TESTESMODALIDADES DE TESTESMODALIDADES DE TESTES
ConcepçãoConcepção
RequisitosRequisitosRequisitos
Análise TESTES ESTÁTICOSAnálise TESTES ESTÁTICOS
• REVISÕES
Análise 
• REVISÕES
Desenho
• REVISÕES
• AUDITORIASDesenho • AUDITORIAS
Implementação TESTES ESTÁTICOSImplementação TESTES ESTÁTICOS• REVISÃO DE CÓDIGOTESTES DINÂMICOS • REVISÃO DE CÓDIGOTESTES DINÂMICOS
• EXECUÇÃO • EXECUÇÃO 
TestesTestesTestes
• Onde estão os erros?• Onde estão os erros?
Manutenção ImplantaçãoManutenção Implantação
9
MODALIDADES DE TESTESMODALIDADES DE TESTESMODALIDADES DE TESTES
• Classificação quanto objetivo• Classificação quanto objetivo• Classificação quanto objetivo
– Teste de Unidade (programação)– Teste de Unidade (programação)– Teste de Unidade (programação)
• Em Unidades de programas.• Em Unidades de programas.
• Busca de Erros nos programas individuais• Busca de Erros nos programas individuais• Busca de Erros nos programas individuais
– Teste de Integração (prog / testes)– Teste de Integração (prog / testes)– Teste de Integração (prog / testes)
• Identificar erros na integração dos diversos • Identificar erros na integração dos diversos 
módulos, já testados individualmentemódulos, já testados individualmentemódulos, já testados individualmente
– Teste de Validação (testes)– Teste de Validação (testes)– Teste de Validação (testes)
• Realizado após a integração de TODOS os • Realizado após a integração de TODOS os • Realizado após a integração de TODOS os 
módulosmódulos
• Antes de IMPLANTAR• Antes de IMPLANTAR
10
ESTRATÉGIAS DE TESTESESTRATÉGIAS DE TESTESESTRATÉGIAS DE TESTES
• TESTE DA CAIXA PRETA (+ simples)• TESTE DA CAIXA PRETA (+ simples)• TESTE DA CAIXA PRETA (+ simples)
– Não considera a forma como esta– Não considera a forma como esta– Não considera a forma como esta
implementado – detalhes internosimplementado – detalhes internosimplementado – detalhes internos
– Objetivo:– Objetivo:– Objetivo:
• o sw produz os resultados esperados?• o sw produz os resultados esperados?• o sw produz os resultados esperados?
• Os requisitos estão sendo atendidos?• Os requisitos estão sendo atendidos?• Os requisitos estão sendo atendidos?
– Vantagem: não requer conhecimento– Vantagem: não requer conhecimento– Vantagem: não requer conhecimento
técnico da tecnologia empregada ou datécnico da tecnologia empregada ou da
implementação aplicada à requerimplementação aplicada à requerimplementação aplicada à requer
profissional menos capacitado.profissional menos capacitado.profissional menos capacitado.
1111
ESTRATÉGIAS DE TESTESESTRATÉGIAS DE TESTESESTRATÉGIAS DE TESTES
• TESTE DA CAIXA BRANCA (+ Complexos)• TESTE DA CAIXA BRANCA (+ Complexos)• TESTE DA CAIXA BRANCA (+ Complexos)
– Baseados na arquitetura interna do software.– Baseados na arquitetura interna do software.– Baseados na arquitetura interna do software.
• Verificação de código• Verificação de código
– Objetivo: identificar defeitos nas estruturas– Objetivo: identificar defeitos nas estruturas
internas do sw, através dasimulação queinternas do sw, através da simulação queinternas do sw, através da simulação que
“testem” toda a estrutura usada na codificação“testem” toda a estrutura usada na codificação
– Desvantagem: requer conhecimento técnico da– Desvantagem: requer conhecimento técnico da
tecnologia empregada pelo software etecnologia empregada pelo software etecnologia empregada pelo software e
arquitetura interna da solução à requerarquitetura interna da solução à requer
profissional BEM capacitado. à Difíceis de
arquitetura interna da solução à requer
profissional BEM capacitado. à Difíceis deprofissional BEM capacitado. à Difíceis de
serem implementados.serem implementados.serem implementados.
– Vantagem: eficientes na detecção de erros.– Vantagem: eficientes na detecção de erros.– Vantagem: eficientes na detecção de erros.
• Casos de testes que cubram TODAS possibilidades• Casos de testes que cubram TODAS possibilidades
12
TESTE DE UNIDADETESTE DE UNIDADETESTE DE UNIDADETESTE DE UNIDADE
§1ª. Etapa do processo de validação.§1ª. Etapa do processo de validação.§1ª. Etapa do processo de validação.
§§Testa UMA unidade: modulo/classe§Testa UMA unidade: modulo/classe§Testa UMA unidade: modulo/classe
§Objetivo: garantir a qualidade dos§Objetivo: garantir a qualidade dos§Objetivo: garantir a qualidade dos
componentes do software,componentes do software,
individualmente, avaliando:
componentes do software,
individualmente, avaliando:individualmente, avaliando:
§§Estrutura internaà usar estratégia de§Estrutura internaà usar estratégia de
caixa branca
§Estrutura internaà usar estratégia de
caixa brancacaixa branca
§§Se a unidade atende aos requisitos –§Se a unidade atende aos requisitos –
usar testes da caixa preta
§Se a unidade atende aos requisitos –
usar testes da caixa pretausar testes da caixa preta
13
TESTE DE INTEGRAÇÃOTESTE DE INTEGRAÇÃOTESTE DE INTEGRAÇÃOTESTE DE INTEGRAÇÃO
§Natural continuidade dos testes de§Natural continuidade dos testes de§Natural continuidade dos testes de
Integração
§
IntegraçãoIntegração
§ Verificar a compatibilidade da nova§ Verificar a compatibilidade da nova§ Verificar a compatibilidade da nova
unidade com as demais, já prontas.
§
unidade com as demais, já prontas.unidade com as demais, já prontas.
§ Verificar se Juntas e integradas, as§ Verificar se Juntas e integradas, as§ Verificar se Juntas e integradas, as
unidades funcionam e realizam o
§ Verificar se Juntas e integradas, as
unidades funcionam e realizam ounidades funcionam e realizam o
trabalho que o sistema precisa.trabalho que o sistema precisa.trabalho que o sistema precisa.
§Cuidado: alteração de componentes.§Cuidado: alteração de componentes.§Cuidado: alteração de componentes.
§§Geralmente aplica-se estratégia da§Geralmente aplica-se estratégia da
caixa preta, testando as interfaces entre
§Geralmente aplica-se estratégia da
caixa preta, testando as interfaces entrecaixa preta, testando as interfaces entre
as unidades, que se integramas unidades, que se integramas unidades, que se integram
1414
TESTES DE SISTEMAS TESTES DE SISTEMAS TESTES DE SISTEMAS 
(VALIDAÇÃO)(VALIDAÇÃO)(VALIDAÇÃO)
§Estágio mais complexo da validação§Estágio mais complexo da validação§Estágio mais complexo da validação
§Validam a solução como um todo.§Validam a solução como um todo.§Validam a solução como um todo.
§Aqui: as falhas individuais já estão sanadas§Aqui: as falhas individuais já estão sanadas§Aqui: as falhas individuais já estão sanadas
(espera-se).(espera-se).(espera-se).
§Ambiente (Hw, SO, rede e etc) bem próximo§Ambiente (Hw, SO, rede e etc) bem próximo§Ambiente (Hw, SO, rede e etc) bem próximo
da realidade da operação).da realidade da operação).
§§Testar: integração com sistemas externos,§Testar: integração com sistemas externos,
dispositivos físicos (hw)
§
dispositivos físicos (hw)dispositivos físicos (hw)
§Dificuldade: vislumbrar os vários cenários de§Dificuldade: vislumbrar os vários cenários de§Dificuldade: vislumbrar os vários cenários de
uso.uso.uso.
§Várias tipos: stress, volume, performance§Várias tipos: stress, volume, performance§Várias tipos: stress, volume, performance
15
TESTES DE ACEITETESTES DE ACEITETESTES DE ACEITETESTES DE ACEITE
§Homologação: interna e externa§Homologação: interna e externa§Homologação: interna e externa
§§Último estágio do processo de§Último estágio do processo de§Último estágio do processo de
validaçãoà último processo formal devalidaçãoà último processo formal devalidaçãoà último processo formal de
detecção de erros no sistema.detecção de erros no sistema.detecção de erros no sistema.
§Uso por clientes e usuáriosà validarem§Uso por clientes e usuáriosà validarem§Uso por clientes e usuáriosà validarem
as funcionalidadesas funcionalidadesas funcionalidades
§§Usuários interagem com sistema§Usuários interagem com sistema§Usuários interagem com sistema
completo.completo.completo.
§Reduz o risco da entrega§Reduz o risco da entrega§Reduz o risco da entrega
16
IMPORTANTEIMPORTANTEIMPORTANTEIMPORTANTE
§§Planejar os testes§Planejar os testes§Planejar os testes
§§Documentar os testes§Documentar os testes§Documentar os testes
§§Validar ao longo do processo.§Validar ao longo do processo.§Validar ao longo do processo.
§§Não “queimar” etapas de testes§Não “queimar” etapas de testes§Não “queimar” etapas de testes
§§Equipe especializada:§Equipe especializada:§Equipe especializada:
§§ Preferencialmente: não ser equipe de§ Preferencialmente: não ser equipe de§ Preferencialmente: não ser equipe de
desenvolvimentodesenvolvimentodesenvolvimento
17

Outros materiais