Buscar

Aula_06 - Testes do Sistema

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 27 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 27 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 27 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

PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
Aula 6 – Testes do Software 
 
 
 
 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
FASE: TESTES DO SISTEMA 
 
 
 
Concepção 
Análise 
Desenho 
Implementação 
Testes 
Implantação 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
MÁXIMA 
• O PIOR ERRO E O MAIS CARO É 
AQUELE QUE CHEGA AO CLIENTE E É 
DESCOBERTO POR ELE. 
• CUSTA CARO: 
• IMAGEM DA EMPRESA / DEPTO 
• SOLUÇÃO DO ERRO 
 
 
 
 
FASE: TESTES 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
FASE: POR QUE TESTAR ? 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
FASE: TESTES - CONCEITOS 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• Encontrar o maior número 
possível de defeitos no 
software 
• O mais cedo possível 
 
 
 
 
QUAL A FINALIDADE DOS TESTES DE SOFTWARE 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• Testar é verificar se o software está fazendo o 
que deveria fazer, de acordo com os seus 
requisitos e, se não está fazendo o que não 
deveria fazer (Rios e Moreira, 2003) 
• Testar é o processo de executar um programa ou 
sistema com a intenção de encontrar defeitos 
(Myers, 1979) 
• Testar é qualquer atividade que, a partir da 
avaliação de uma atributo ou de uma 
capacidade, permita determinar se o programa o 
sistema obtém resultados desejados (Hetzel, 
1988) 
 
 
 
 
QUAL A FINALIDADE DOS TESTES DE SOFTWARE? 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• [1] – TESTES ESTÁTICOS OU VERIFICAÇÕES 
• Durante a fase de modelagem (análise e projeto)  
Antes da implementação 
• Inspeções, revisões, auditorias, verificações 
• Modelos x Requisitos 
• Visa a qualidade no processo e produto 
 
• [2] – TESTES DINÁMICOS OU VALIDAÇÕES 
• Durante e após a fase de implementação 
• Precisa do código implementado 
• Visa qualidade no produto 
 
 
 
 
FASE: TESTES – AO LONGO EM NÃO UMA FASE 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• 5ª Fase do processo de desenvolvimento - FUNDAMENTAL 
• Condição: 
• Programas ou parte deles (Sistemas é um conjunto de 
programas ou unidades implementáveis) desenvolvidos 
e com mínimo de verificação/teste 
• Finalidade: 
• Garantir que o sistema é livre de erros (bugs) 
• Garantir que o sistema faz o que o usuário precisa 
• Características 
• Geralmente “deixada para trás”, na correria do 
desenvolvimento 
• É um dos pilares de um processo de desenvolvimento 
com qualidade. Teste  Qualidade (processo e 
produto) 
 
 
 
 
FASE: TESTES - CONCEITOS 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
FASE: TESTES DO SOFTWARE 
• O testador deve ter a capacidade de 
• Entender o objetivo do programa ou unidade 
• Aplicar o teste adequado 
• Explicitar com clareza as falhas identificadas, 
associando-as ao ponto específico do procedimento 
(tela, e etc) e aos dados usados. 
 
 
CÓDIGO FONTE 
CÓDIGO FONTE 
COM QUALIDADE 
TESTADOR 
OK 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• Um sub-processo dentro do processo de desenvolvimento 
 
• Requer Planejamento 
• Requer Especificação 
• Requer Execução 
• Descoberta dos Erros 
• Análise dos Resultados 
• Requer Entrega 
• Apresentação do relatório final 
• Equipe de desenvolvimento 
• Depura o erro 
• Corrige o Erro 
 
Sobre O TESTE – veremos ***** 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• Uma etapa dentro do processo de desenvolvimento 
• Em geral, executado pelos próprios desenvolvedores e pelos 
usuários (lamentável) 
• Servem, basicamente, para garantir que as especificações e 
os requisitos foram efetivamente implementados. 
• O processo cria produtos com defeitos – os testes 
descobrem esses defeitos. 
• Prazos exíguos dos projetos  Cortam os testes. Quem 
acaba testando? R: Usuário !! 
• HÁ QUALIDADE NO ACIMA DESCRITO? QUAL A EFETIVAMENTE 
DOS PRÓPRIOS DESENVOLVEDORES TESTAREM? 
 
• PROPOSTA: Processo de Testes, claramente definido. 
• Executado por especialistas treinados. 
 
FASE: TESTES – O QUE OCORRE NA PRÁTICA 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• O TESTADOS É INIMIGO DO DESENVOLVEDOR 
 
• A EQUIPE DE TESTES DEVE SER CRIADA COM OS 
DESENVOLVEDORES MENOS CAPACITADOS DA EQUIPE DE 
DESENVOLVIMENTO, AFINAL, QUAQUER UM PODE TESTAR. 
 
• QUANDO TODO O SOFTWARE ESTIVER PRONTO (O QUE TALVEZ 
NUNCA ACONTEÇA), ELE SEGUIRÁ PARA O PESSOAL FAZER O 
TESTE. 
FASE: TESTES – MITOS 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• O processo de testes começa em paralelo com o processo 
de desenvolvimento e integra-se a ele, ao longo. 
• Inserção de técnicas de revisões e inspeções nos 
documentos e modelos produzidos  descobre erros antes, 
mais baratos de serem sanados. 
• Os testes em si devem priorizar as funcionalidades mais 
críticas, que podem por em risco o negócio 
• QUANTO MAIS CEDO O ERRO FOR ENCONTRADO, MAIS 
BARATA A SUA SOLUÇÕES (10 REGRAS DE MYERS). 
 
• LEMBRE-SE : Um software desenvolvido HOJE pode estar 
rodando e gerando erros daqui há 10, 15, 20 anos. (assim 
espera o investidor !!!) 
 
FASE: TESTES – PREMISSAS DO MODELO PROPOSTO 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• PLANEJAMENTO 
• Objetivo: minimizar os principais riscos do negócio 
 
• Elaborar a estratégia de teste 
• Elaborar o plano de teste 
 
• Etapa acontece com o levantamento de requisitos e 
planejamento do processo de desenvolvimento 
 
 
FASE: TESTES – PROCESSO 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• PREPARAÇÃO 
• Preparar o ambiente (equipamentos, pessoas, 
ferramentas de automação, hardware, software..) 
para boa execução dos testes. 
• Disponibilizar infra e ferramentas 
• Avaliar as necessidades de treinamento da equipe 
 
 
 
FASE: TESTES – PROCESSO 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• ESPECIFICAÇÃO 
• Elaborar e revisar casos de testes 
• Elaborar e revisar Roteiros de testes. 
 
• E preciso que a equipe de desenvolvimento já tenha 
avançado na modelagem e as vezes é preciso até que 
seja liberada parte da aplicação 
 
 
 
FASE: TESTES – PROCESSO 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• EXECUÇÃO 
• Executar os testes planejados 
• Conforme casos e roteiros de testes 
• Usar Script – caso use ferramenta de automação de 
testes 
• Registrar os resultados obtidos 
 
• E preciso que a equipe de desenvolvimento já tenha 
avançado na modelagem e as vezes é preciso até que 
seja liberada parte da aplicação 
 
 
 
FASE: TESTES – PROCESSO 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• ENTREGA 
• Finalização do teste 
• Concluída/arquiva a documentação• Relatar as ocorrências relevantes para a melhoria do 
processo. 
 
 
 
FASE: TESTES – PROCESSO 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
• As estratégias de SW usadas nos projetos são: 
• Testes Unitários – testes de unidades isoladas, 
geralmente realizadas na fase de Implementação 
• Testes de integração – testes integrando as unidades 
já testados, verificando o conjunto que vai se 
formando, geralmente realizado na fase de 
implementação. 
• Testes de Sistema – teste do conjunto formado por 
todas as unidades, devidamente programadas, 
testadas isoladamente e testadas de forma integrada. 
• Testes de Aceitação ou homologação 
• Homologação interna 
• Homologação pelo cliente 
 
NÍVEIS DE TESTES DURANTE A EXECUÇÃO. 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
TÉCNICAS DE TESTES MAIS USADAS 
• Os testes pelos quais passam o sistema devem ter 2 
perspectivas 
 
• Testes Funcionais: garantem o atendimento aos 
requisitos  Caixa Preta 
 
• Testes Estruturais: garantem que o software tenha 
estrutura sólida: robustez  Caixa Branca 
• As tecnologias foram aplicadas 
adequadamente? 
• Os componentes funcionam como uma unidade 
coesas? 
 
 
 
 
 
 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
TESTES FUNCIONAIS OU CAIXA PRETA 
• Não considera a forma como o código está 
implementado (detalhes internos) 
• Objetivo: 
• O SW produz os resultados esperados? 
• Os requisitos estão sendo atendidos. 
• Não requer conhecimento prévio da 
tecnologia empregada e da implementação 
do código 
 
 
 
 
 
 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
TIPOS DE TESTES POR TECNICA: FUNCIONAL 
• Requisitos  verificar se o sistema executa 
corretamente as funções e sustenta isso por 
período de tempo contínuo. 
• Regressão  verificar se o sistema executa tem 
mesmo comportamento após ser alterado 
• Em geral realizar os mesmos testes de antes da 
alteração. 
• Tratamento de erro  capacidade em tratar as 
situações incorretas 
 
 
 
 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
TESTES ESTRUTURAL OU CAIXA BRANCA 
• Verifica a arquitetura interna do 
software 
• Objetivo: 
• Identificar os defeitos nas estruturas 
internas do software  teste de 
cada detalhe da estrutura do código 
• Requer conhecimento técnico da 
tecnologia e do projeto de software. 
• Deve ser bem planejado 
 
 
 
 
 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
TIPOS DE TESTES POR TECNICA: ESTRUTURAL 
• Estresse  operar em condições além da normal 
• Avaliar o comportamento do software sob 
condições críticas (pouca memória, disco....) 
• Avaliar o comportamento sob elevado volume 
de dados 
• Execução  Avaliar o desempenho do sistema do 
sistema em ambiente de produção: 
• Estão compatíveis com as premissas? 
• Tempo de resposta, processamento 
• Segurança  Garantir a confidencialidade das 
informações e proteção dos dados contra acesso 
indevido. 
 
 
 
 
 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
 
 
 
FASE: TESTES : UM TESTE GERA NOVA NECESSIDADE DE TESTE 
Testes e Implantação do Software – Aula 6 
PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE 
PRINCIPAIS CONCEITOS APRESENTADOS NA AULA. 
• Conceito de Teste  Encontrar erros nos 
programas, mais cedo possível. 
• Importância do Testes  Evitar erros estratégicos. 
• Geralmente, relegado ou realizado dentro de 
processo, sem um objetivo claramente definido. 
• Realidade dos testes 
• Proposta: modelo paralelo e integrado ao 
desenvolvimento 
• Testes Funcionais 
• Testes Estruturais 
• Testes de funcionalidades alteradas  
complexidade

Continue navegando