View
217
Download
0
Category
Preview:
Citation preview
Atividades de Teste
3
“ O objetivo da atividade de teste é encontrar defeitos e nunca afirmar que os sistemas não tem defeito”
Atividades de Teste
4
“Uma solução para não se ter problema no software é testar todas as possibilidades ? ”
“Quanto tempo levaria para executar este teste exaustivo ?”
Exemplo : É possível testar para todos os possíveis valores inteiros de “j” ?
j varia entre -32768 e 32767 necessário realizar 65536 testes
Atividades de Teste
5
Na prática não se consegue testar completamente um programa nem garantir que ele esteja livre de defeitos
Quase impossível testar todas as possibilidades
Sistemas Críticos chegam perto do ideal
Custo muito alto
Solução: Aplicar os critérios de teste para ajudar a definir melhor os casos de teste e os dados de entrada a fim de encontrar defeito.
Plano de teste
7
Documento com as definições do planejamento de testes
Baseado nos requisitos da aplicação e nos requisitos do teste
Importantes porque
Documenta o projeto de teste
Permite que testes possam ser repetidos
Sempre que houver modificação
Controlados
Controlar a execução do plano
Define o nível de cobertura a ser alcançado
Impossível testar tudo então, cobrir partes críticas do sistema
8
Itens do Plano de Teste(Modelo PMBOK)
Plano de teste IEEE 829
Escopo • define o que será coberto pelos testes
Custo •Métricas
Tempo •Cronograma
Qualidade •Abordagens dos testes
Integração •Ambiente de teste
Recursos humanos •Pessoal•Responsabilidades
Comunicação •Entregas
Riscos •Riscos do processo de teste•Plano de riscos e contingências
Suprimentos •Ferramentas de teste
Modelo PMBOK e a proposta de plano da IEEE
Plano de teste
Itens do Plano de teste
9
Escopo
o que será coberto pelo teste
requisitos
Interface com o outros softwares, componentes, elementos da rede que possam afetar o projeto
Custo
Usar métrica para medir o tamanho do projeto
Métricas de teste
ex.: pontos de casos de teste
Tempo
Ligado também ao tamanho do projeto
Itens do Plano de teste
10
Qualidade
Abordagem de teste
Integração
Com o projeto de desenvolvimento
Recursos humanos
Quantidade de homem/hora necessária
Comunicação
Reuniões de controle, relatórios de progresso
Itens do Plano de teste
11
Riscos
Não misturar os riscos do projeto de teste com os riscos do negócio
Ex.: uso de uma ferramenta de automação que o testador não conheça
Suprimentos
Compra de ferramentas, etc.
Endereços de templates com plano de testes:
www.stickminds.com
Outra referência de plano de teste está em IEEE 829-1998
Casos de Teste
12
O que é Casos de Teste ?
Sequência de passos que devem ser executados no sistema,sendo que os dados de entrada e saída esperado para cadapasso são especificadas.
Objetivo dos Casos de Teste
Direcionar as ações do testador em uma determinadafuncionalidade para que ele observe se o resultado obtido emcada passo, equivale ao resultado esperado de acordo com os
requisitos.
Itens do Caso de Teste
13
A norma (IEEE 829-2008, 2008) menciona que um caso de teste deve conter:
Item Descrição1.
1. Identificador do Caso de Teste Número único de identificação do caso de teste
2. Objetivo do Caso de Teste Indicar o objetivo do caso de teste
3. Entradas Todas as entradas consideradas no caso de teste
4. Saídas Saídas esperadas de acordo com as entradas indicadas na execução dos testes
5. Ambientes necessários Ambiente de hardware e software que deve ser montado para execução do Caso de teste em questão
Itens do Caso de Teste
14
A norma (IEEE 829-2008, 2008) menciona que um caso de teste deve conter:
Item Descrição1.
6. Procedimentos especiais para execução do Caso de Teste
Especifica o que deve ser testado e a forma que o teste deve ser executado.
7. Dependência com outros Casos de Teste
Especificar casos de teste relacionados
Exemplo de Caso de Teste
15
Item Descrição
1. Identificação do Caso de Teste Caso de Teste 1 Função: exemplo_simples (slide 4)
2. Objetivo do Caso de Teste Verificar se entradas negativas são possíveis
3. Entradas - 30000
4. Saídas 0,99
5. Ambientes necessários Nenhum
6. Procedimentos especiais para execução do Caso de Teste
Nenhum
7. Dependência com outros Casos de Teste
Nenhum
Exemplo 1:
Exemplo de Caso de Teste
16
Item Descrição
1. Identificação do Caso de Teste
Caso de Teste 2 - Login
2. Objetivo do Caso de Teste Verificar login inválido
3. Entradas E1 – selecione no ícone do aplicativoE2- insira um email inválido, sem o @ (ex.: professor.gmail.com) e selecione nextE3 – selecione OK na mensagem
4. Saídas S1- o aplicativo deve exibir a tela de loginS2 – o aplicativo deve deixar a borda do campo login em vermelho e exibir a mensagem “Por favor, digite um login válido”S3 – o cursor de digitação deve estar no campo login e o usuário poderá corrigir o login anterior
Exemplo 2:
Exemplo de Caso de Teste
17
Item Descrição
5. Ambientes necessários Smartphone com aplicativo instalado
6. Procedimentos especiais para execução do Caso de Teste
Nenhum
7. Dependência com outros Casos de Teste
Nenhuma (não é necessário realizar nenhuma ação antes para realizar o login)
Exemplo 2:
Cenário de Teste
18
O que é Cenário de Teste ?
Conjunto de Casos de teste relacionados que testam mesmocomponente ou mesma funcionalidade do sistema.
Objetivos do Cenário de Teste
úteis para o teste de regressão de modo a garantir que asnovas funcionalidades não inseriram defeito nas antigas.
Revalidar mudanças nos casos de teste
Treinar novos testadores e pessoas que darão suporte aosistema.
Declaração de Defeito
19
um defeito ao ser identificado deve ser registrado parapermitir que a equipe de desenvolvimento possaidentificar o defeito e eliminá-lo.
A forma de reportar defeito depende muito de padrõesdefinidos pela empresa ou das ferramentas utilizadas paragerenciar atividade de teste.
Exemplo de ferramentas de teste: Jira e Zephyr daAtlassian, Bugzilla ou Testlink
Declaração de Defeito
20
Modelo para Reportar Defeito
Item Descrição1.
1. Identificador do defeito Identificador único para facilitar a localização e comunicação
2. Descrição do defeito Descrição sucinta do defeito encontrado
3. Versão do produto Versão do produto que o defeito foi encontrado
4. Passos detalhados Descrição dos passos realizados no sistema, incluindo os dados utilizados para encontrar o defeito
5. Data de reporte do defeito Facilitar o gerenciamento
6- Identificação do reportador Testador que identificou o erro
7-Status Situação atual do defeito.Exemplo de possíveis status: novo/aberto, designado, em verificação, resolvido, fechado, etc.
Declaração de Defeito
21
Modelo para Reportar DefeitoItem Descrição1.
8-Identificação do responsável pela correção
Nome do desenvolvedor que corrigiu o defeito
9 – Data de encerramento Data que o defeito foi dado como inexistente
10- Severidade Indica o grau de gravidade do defeitoEx.: bloqueia a versão, crítico, pequeno
11- Prioridade Prioridade em corrigir o defeito: alta, média e baixa.
Abordagem de teste
Definição:
Nível de teste
Técnica de teste a ser aplicada
Critério de teste a ser utilizado
Tipo de teste a ser aplicado no software
22
Identifica as fases em que o teste será aplicado
Teste de unidade
Relacionado ao teste dos módulos do sistema
Teste de integração
Integração entre os módulos
Teste de sistema
Atendimento dos requisitos funcionais e não funcionais
Teste de aceitação
Aceitação do usuário
Teste de regressão
Aplicados na fase de manutenção 23
Definição da abordagem de testeNível de teste
Foco nas menores unidades do programa Funções, procedimentos, métodos ou classes
Espera-se encontrar erros relacionados a : Algoritmos incorretos
Estruturas de dados incorretas
Erros de programação
24
Definição da abordagem de testeNível de teste – Teste de Unidade
Cada unidade é testada separadamente
Aplicado a medida que é implementado
Aplicado pelo desenvolvedor
Não demanda que o sistema esteja completamente pronto
25
Definição da abordagem de testeNível de teste – Teste de Unidade
Realizado após o teste de unidade
Ênfase na construção da estrutura do sistema
Verifica se a integração entre as unidades funciona
Necessário conhecimento sobre as estruturas internas e sobre as interações entre as partes
Em geral executado pela equipe de desenvolvimento
26
Definição da abordagem de testeNível de teste – Teste de Integração
Após as partes terem sido integradas
Verificar se as funcionalidades dos requisitos estão implementadas corretamente
Explorar coesão, completude, requisitos não funcionais, segurança, performance ...
Equipes diferentes podem ser designadas para realizar o teste
27
Definição da abordagem de testeNível de teste – Teste de Sistema
Executado pelo usuário
Valida se o software faz o que foi pedido
28
Definição da abordagem de testeNível de teste – Teste de aceitação
Realizado durante a manutenção do software
Após as modificações
Avalia se a mudança funciona como esperado e se os requisitos anteriores continuam válidos
29
Definição da abordagem de testeNível de teste – Teste de Regressão
Depende da fase do desenvolvimento e direciona a escolha dos critérios para geração dos casos de teste
Teste estrutural
Adota critérios com a finalidade de encontrar defeitos nas estruturas internas do software
Teste funcional
Adota critérios com a finalidade de garantir que os requisitos sejam atendidos
Ao se adotar uma técnica escolhe-se um critério a ser usado para gerar os casos de teste
30
Definição da abordagem de testeTécnica de teste
Características do software que poderão ser testados
Teste de Funcionalidade
Teste de Interface
Teste de Desempenho
Teste de Carga (Stress)
Teste de Usabilidade
Teste de Volume
Teste de Segurança31
Definição da abordagem de testeTipos de teste
Recommended