Buscar

Cont_online_01

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 6 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 6 páginas

Prévia do material em texto

1 
 
 
Nesta aula, você irá: 
1 - Compreender a necessidade de testes nas fases de construção de um sistema; 
2 - Compreender a necessidade de testes nas diversas fases de vida de um sistema; 
3 - Identificar testes físicos e testes teóricos; 
4 - Distinguir teste de sistema de teste de programa; 
5 - Desenvolver plano geral de teste em um software 
 
Aula 1: Importância do teste de software 
 
Antes de definirmos o que é teste de software vamos definir o conceito de teste: 
 Operação técnica que consiste em determinar se uma ou mais características de um dado 
produto, processo ou serviço estão de acordo com um procedimento especificado (ISO/IEC 1991) 
Agora, vamos definir o conceito de teste de software. Existem diversas definições para testes de 
software: 
 Avaliar se o software está fazendo o que deveria fazer, de acordo com os seus requisitos, 
e não está fazendo o que não deveria fazer; 
 Processo de executar um programa ou um sistema com a intenção de encontrar defeitos 
(teste negativo) (Glen Myers – 1979); 
 Qualquer atividade que, a partir da avaliação de um atributo ou capacidade de um 
programa ou sistema seja possível determinar se ele alcança os resultados desejados. (Bill Hetzel 
– 1988). 
 
2 
 
 
 
 Uma estratégia de software deverá fornecer diretrizes para o profissional de teste e uma 
série de metas para o gerente. 
Emerson Rios nos dá uma visão histórica da execução dos testes de software: 
 Demonstração - Décadas de 70: Garantir que o produto funcione; Testes feitos pelos 
desenvolvedores; 
 Detecção - Década de 80/90: Garantir que o produto atenda aos requisitos; Testes feitos 
pelos desenvolvedores e usuários; 
 Prevenção - Década de 90/00: Garantir que o produto funcione; atenda aos requisitos e 
não tenha defeito; Testes executados através de processos de testes; Testes feitos pelos 
desenvolvedores, usuários e testadores. 
 
ATENÇÃO: 
 
 
O Processo De Teste De Software 
 O processo de teste de software deve se basear em uma metodologia aderente ao 
processo de desenvolvimento, com pessoal técnico qualificado, ambiente e ferramentas 
adequadas. Esta metodologia de teste deve ser o documento básico para organizar a atividade 
de testar aplicações no contexto da empresa. Assim como o processo de desenvolvimento de 
software, o teste de software também possui um ciclo de vida: 
3 
 
 
 
 Planejamento: Elaboração e revisão da estratégia de teste e do plano de teste; 
 Procedimentos Iniciais: Consiste na elaboração de um documento com o 
estabelecimento de um acordo entre as partes envolvidas no projeto de teste (usuário, 
representante do desenvolvimento, testes e produção) para definição dos seguintes 
assuntos: 
-objetivo do projeto de teste; 
-pessoal a ser envolvido; 
-as responsabilidades de cada um; 
-o plano preliminar de trabalho; 
-avaliação dos riscos; 
-os níveis de serviços acordados e 
-qualquer item considerado irrelevante. 
 Especificação: elaboração e revisão dos casos de teste, "scripts"(no caso de ferramenta 
de automação de testes) e dos roteiros de Teste e execução dos testes de verificação da 
documentação do sistema (testes estáticos). 
 Execução: execução dos testes planejados, conforme os Casos de Teste, "scripts" e dos 
roteiros de Testes com os correspondentes registros dos resultados obtidos; 
 Entrega: conclusão do processo de testes, com a entrega do sistema para o ambiente de 
produção; 
 Preparação: preparação do ambiente de teste, incluindo equipamentos, rede, pessoal, 
softwares e ferramentas. 
 
Revisão Das Etapas De Desenvolvimento De Um Software 
 Segundo Pressman, um modelo genérico de desenvolvimento de software estabelece 
cinco atividades metodológicas: 
 Comunicação: início do projeto e Levantamento das necessidades; 
 Planejamento: Estimativas, cronograma e acompanhamento; 
 Modelagem: análise, projeto; 
 Construção: entrega, suporte e feedback; e 
 Entrega: Entrega. suporte e feedback. 
 
Estas atividades podem estar caracterizadas por diferentes fluxos de processo. 
fluxos de processo 
 
 
4 
 
 
 
 Como já falamos anteriormente, o processo de teste de software deve se basear em uma 
metodologia aderente ao processo de desenvolvimento. A imagem abaixo mostra como o ciclo de 
vida do projeto de teste deve interagir com o ciclo de vida do projeto de desenvolvimento 
 
Verificação 
 
Teste Unitário 
 
Teste de Integração 
 
5 
 
Teste de sistema 
 
Teste de aceitação 
 
 
 Há muitas estratégias que podem ser utilizadas para testar um software. Uma das 
estratégias de teste, a preferida pela maioria das equipes, é a visão incremental do teste, 
começando com o teste das unidades individuais de programa, passando para os testes 
destinados a facilitar a integração de unidades e culminando com testes que usam o sistema 
concluído. 
 
 Ao tratar os testes como um processo organizado e muitas vezes paralelo e integrado ao 
processo de desenvolvimento, os custos de manutenção serão reduzidos. Segundo Myers, o 
custo de correção de defeitos tende a aumentar quanto mais tarde o defeito é detectado. Defeitos 
encontrados durante a produção tendem a custar muito mais do que defeitos encontrados em 
modelos de dados e em outros documentos do projeto do software. 
Myers afirma ainda que: 
o OS testes unitários podem remover entre 30% e 50% dos defeitos dos programas; 
o Os testes de sistema podem remover entre 30% e 50% dos defeitos remanescente; 
o Desse modo, os sistemas podem ir para a produção ainda com aproximadamente 49% de 
defeitos; 
o Por último, as revisões de códigos podem reduzir entre 20% e 30% desses defeitos. 
 
Bugs,erros E Defeitos 
 Segundo Pressman, o objetivo geral do controle de qualidade de software e da gestão da 
qualidade é eliminar problemas de qualidade no software. Tais problemas são conhecidos por 
diversos nomes: bugs, falhas, erros ou defeitos. 
 Neste contexto, um erro é definido como um problema de qualidade encontrado antes do 
software ser liberado aos usuários finais. O defeito é um problema de qualidade encontrado 
depois de o software ter sido liberado aos usuários finais. Porém, na maioria das vezes os termos 
são utilizados como sinônimos devido à dificuldade de classificação dos termos. 
 Mais informações em http://www.softwaredevelopment.ca/bugs.shtml 
 
Para saber mais sobre os tópicos estudados nesta aula, pesquise na internet sites, vídeos e 
artigos relacionados ao conteúdo visto. Se ainda tiver alguma dúvida, fale com seu professor 
online utilizando os recursos disponíveis no ambiente de aprendizagem. 
http://www.alats.org.br/portal/missao-proposito.html 
http://www.bstqb.org.br/ 
 
Nesta aula, você: 
 Compreendeu a necessidade de testes nas fases de construção de um sistema e nas fases de vida de um 
sistema; 
 Identificou os testes físicos e testes teóricos; 
6 
 
 Distinguiu teste de sistema de teste de programa; 
 Desenvolveu plano geral de teste em um software. 
 
Próxima aula : 
 Tema: Teste no projeto de sistema 
 Assunto 1: compreender a necessidade de testes na especificação do projeto. 
 Assunto 2: planejar testes no projeto de software. 
 Assunto 3: implementar testes na especificação do projeto. 
 Assunto 4: avaliar a aplicação de testes em projetos de software. 
 Assunto 5: interagir com o usuário para a validação de testes no projeto. 
 
 
 
1a Questão (Ref.: 201002230729) 
 
O processo de teste de software deve basear-se em uma metodologia aderente ao processo de 
desenvolvimento, com pessoal técnico qualificado, ambiente e ferramentas adequadas. Esta metodologiade 
teste deve ser o documento básico para organizar a atividade de testar aplicações no contexto da empresa. 
Assim como o processo de desenvolvimento de software, teste de software também possui um ciclo de vida. 
Qual das opções abaixo NÃO faz parte do ciclo de vida do teste de software? 
 
 
Especificação: Elaboração e revisão dos casos de teste , ¿scripts¿ ( no caso de ferramentas de 
automação de testes) e dos roteiros de Teste e execução dos testes de verificação da documentação do 
sistema (testes estáticos). 
 
Procedimentos iniciais: Consiste na elaboração de documento com o estabelecimento de um acordo 
entre as partes envolvidas no projeto de teste. 
 
Execução: Execução dos testes planejados conforme os Casos de Teste, ¿scripts¿ e dos roteiros de 
Teste com os correspondentes registros dos resultados obtidos. 
 
Entrega: conclusão do processo de testes com a entrega do sistema para o ambiente de produção. 
 Codificação: É a conversão das representações do Projeto em uma seqüencia de instruções que 
formam um programa, sendo escrito numa linguagem de programação 
 
 
 
 2a Questão (Ref.: 201002195236) 
Uma equipe de Testes independente normalmente é formada exclusivamente por: 
 
 
Gerentes em geral, Analista de Teste, Usuário e Testador. 
 Testador, Analista de Teste, Arquiteto de Teste e Líder do Projeto de Testes. 
 
Testador, Desenvolvedor, Analista de Teste e Arquiteto de Teste. 
 Testador, Usuário, Líder do projeto de Teste e Arquiteto de Teste. 
 
Auditor, Desenvolvedor, Testador e Analista de Teste. 
 
 
 
 3a Questão (Ref.: 201002195303) 
Qual é a vantagem de usar testadores independentes? 
 
 
Teste Independente alivia os desenvolvedores de toda a responsabilidade pela qualidade. 
 
Você não necessita pessoas técnicas ou com o conhecimento do negócio nas equipes de teste. 
 Equipes Independentes de Testes são muitas vezes mais eficientes na identificação de defeitos. 
 
O custo inicial é maior embora os resultados finais tendem a ser financeiramente melhores. 
 As equipes independentes do teste são responsáveis para asseguram a conclusão do período de execução 
de teste.

Outros materiais