O Fluxo de Testes
© Alexandre Vasconcelos
amlv@cin.ufpe.br
alexandre@qualiti.com.br
Centro de Informática da UFPE/
Qualiti Software Processes
1/37
Fluxo de Testes
2/37
Fluxo de Testes






Avaliar o nível de qualidade do produto
Verificar a correta integração entre todos os
componentes de software;
Verificar se todos os requisitos do sistema foram
implementados corretamente;
Planejar os testes que devem ser executados em cada
iteração;
Projetar e implementar os testes, definindo casos de
teste;
Identificar defeitos e assegurar que suas correções são
prioritárias à entrega do produto.
3/37
Relacionamento com os demais Fluxos




No fluxo de planejamento e gerenciamento, os testes
para cada iteração são planejados e documentados no
plano da iteração;
O fluxo de requisitos é o primeiro passo para a
identificação dos testes que serão executados;
O fluxo de análise e projeto descreve como
desenvolver um projeto e isto é outro passo para a
definição de testes;
O alvo principal das atividades de teste é a aplicação
do mesmo aos resultados da implementação.
4/37
O que é um Modelo de Teste?
Um modelo de teste consiste de:
•Casos de teste
•Procedimentos de teste
Caso de teste
Caso de teste
OK
Um caso teste pode ser
implementado por um ou mais
procedimentos.
Saque de um
valor pré-definido
OK
Saque de um valor
digitado
Procedimento de teste
Um procedimento de teste
implementa (todo ou parte de)
um ou mais casos de teste.
Use cases são a primeira entrada
para identificar casos de teste.
OK
OK
Finalizar saque
Iniciar saque de valor
pré-definido
OK
Finalizar saque de
um valor digitado
Caso e procedimento de teste em um
Sistema ATM.
5/37
Artefatos do Fluxo de Testes
Projeto de Testes
Plano de Testes
Avaliação dos
Testes
Casos de Teste
Componentes
de Teste
Procedimentos
de Teste
Log’s de Defeitos
6/37
Plano de Testes


Descreve as estratégias de teste, o esforço
necessário para sua realização e seu
cronograma;
Na estratégia de teste estão definidos os tipos
de teste que serão executados na iteração e os
objetivos que devem ser atingidos.
7/37
Plano de Testes
1
INTRODUÇÃO ________________________________________________________________ 3
1.1
1.2
2
REQUISITOS A TESTAR _______________________________________________________ 3
2.1
3
ESTÁGIOS E TIPOS DOS TESTES ____________________________________________________ 4
TÉCNICA ____________________________________________________________________ 5
CRITÉRIOS DE CONCLUSÃO E SUCESSO______________________________________________ 5
CONSIDERAÇÕES ESPECIAIS ______________________________________________________ 5
RECURSOS ___________________________________________________________________ 5
4.1
4.2
4.3
4.4
5
IDENTIFICAÇÃO DOS REQUISITOS A TESTAR _________________________________________ 4
ESTRATÉGIA _________________________________________________________________ 4
3.1
3.2
3.3
3.4
4
VISÃO GERAL DESTE DOCUMENTO _________________________________________________ 3
REFERÊNCIAS ________________________________________________________________ 3
RECURSOS HUMANOS __________________________________________________________ 5
AMBIENTE DE TESTE (HARDWARE E SOFTWARE) ______________________________________ 5
FERRAMENTAS________________________________________________________________ 5
DADOS ______________________________________________________________________ 6
CRONOGRAMA_______________________________________________________________ 6
8/37
Projeto de Testes



É composto pelos casos e procedimentos de teste;
Um caso de teste especifica uma maneira de testar o
sistema: o que testar, quais os valores e pré-condições
de entrada e os valores e pós-condições de saída;
Um procedimento de teste especifica como realizar um
ou diversos casos de teste. É um conjunto de
instruções para execução e avaliação de resultados
para um ou mais casos de teste, que podem ser
efetivados manualmente ou através de ferramentas.
9/37
Projeto de Testes
1
INTRODUÇÃO ________________________________________________________________ 3
1.1
1.2
2
VISÃO GERAL DESTE DOCUMENTO _________________________________________________ 3
REFERÊNCIAS ________________________________________________________________ 3
CASOS DE TESTE _____________________________________________________________ 4
2.1 IDENTIFICAÇÃO DOS CASOS DE TESTE ______________________________________________ 4
[CT001] <Nome do caso de teste> __________________________________________________ 4
[CT…] <Nome do caso de teste> ___________________________________________________ 4
3
PROCEDIMENTOS DE TESTE __________________________________________________ 5
3.1 IDENTIFICAÇÃO DOS PROCEDIMENTOS DE TESTE ______________________________________ 5
[ProcT001] <Nome do procedimento de teste> ________________________________________ 5
[ProcT…] <Nome do procedimento de teste> _________________________________________ 5
10/37
Avaliação dos Testes

É uma avaliação dos resultados dos esforços
do teste como, por exemplo, a análise da
cobertura dos casos e procedimentos de teste
11/37
Log’s de Defeito

É um registro de um defeito encontrado ao ser
executado um teste.
12/37
Componente de Teste


Automatiza um ou mais procedimentos de teste
ou partes deles e pode ser desenvolvido
usando-se uma linguagem de
programação/script ou gerado através de uma
interação com uma ferramenta de testes;
Os componentes podem ser classes, pacotes,
subsistemas ou scripts.
13/37
Considerações Gerais sobre os Artefatos
do Fluxo de Testes

Devido à natureza iterativa do processo de
desenvolvimento, muitos dos artefatos
produzidos nas primeiras iterações como casos
e procedimentos de teste são usados em
iterações posteriores como testes de
regressão.
14/37
Artefatos x Responsáveis no Fluxo de
Testes
Projetista
de testes
Testador de
integração
Testador de
sistema
Programador
responsável
por
responsável
por
responsável
por
responsável
por
Plano de testes
Projeto de testes Avaliação dos testes Log de defeitos de Log de defeitos
Subsistemas,
(casos e
integração
de sistema Componentes, Classes,
procedimentos)
Pacotes e Scripts de
teste
15/37
Fluxo de atividades
Projetista de
Testes
Desenvolvedor
Testador
Elaborar Plano
de Testes
Avaliar
Testes
Projetar
Testes
Implementar
Testes
Executar
Testes
16/37
Atividade: Elaborar plano de testes
Projetista de
Testes
Desenvolvedor
Testador
Elaborar Plano
de Testes
Avaliar
Testes
Projetar
Testes
Implementar
Testes
Executar
Testes
17/37
Atividade: Elaborar plano de testes

Tem por objetivo documentar as informações
relevantes ao planejamento dos testes para
uma iteração.
18/37
Elaborar plano de testes: entrada x saída

Entrada:
 Documento
de requisitos
 Modelo de casos de uso

Saída:
 Plano
de testes
19/37
Elaborar plano de testes: passos






Identificar requisitos a serem testados
Definir prioridades
Definir estratégias de testes
Definir recursos
Definir cronograma
Notificar o gerente do projeto
20/37
Atividade: Projetar testes
Projetista de
Testes
Desenvolvedor
Testador
Elaborar Plano
de Testes
Avaliar
Testes
Projetar
Testes
Implementar
Testes
Executar
Testes
21/37
Atividade: Projetar testes

Tem por objetivo identificar e descrever os
casos de teste para cada build, e identificar e
estruturar os procedimentos de teste,
especificando como executar os casos de
teste.
22/37
Projetar testes: entrada x saída

Entrada:
 Documento
de requisitos
 Modelo de casos de uso
 Plano de testes

Saída:
 Projeto
de testes
 Plano de testes (atualizado)
23/37
Projetar testes: passos


Identificar e descrever casos de teste
Identificar e estruturar procedimentos de teste
24/37
Atividade: Implementar testes
Projetista de
Testes
Desenvolvedor
Testador
Elaborar Plano
de Testes
Avaliar
Testes
Projetar
Testes
Implementar
Testes
Executar
Testes
25/37
Atividade: Implementar testes

Tem por objetivo automatizar procedimentos de
teste criando componentes de teste
consistentes com os casos de teste
associados.
26/37
Implementar testes: entrada x saída

Entrada:
 Projeto

de testes
Saída:
 Componentes
de teste
27/37
Implementar testes: passos



Gerar componentes de teste
Identificar funcionalidades específicas para
teste nos modelos de projeto e implementação
Definir conjunto de dados externos
28/37
Atividade: Executar testes
Projetista de
Testes
Desenvolvedor
Testador
Elaborar Plano
de Testes
Avaliar
Testes
Projetar
Testes
Implementar
Testes
Executar
Testes
29/37
Atividade: Executar testes

Tem por objetivo:
 executar
testes de integração para cada build
do sistema, avaliar seus resultados e registrar
os defeitos encontrados.
 executar testes de sistema para o último build
de cada iteração do sistema, avaliar seus
resultados e registrar os defeitos encontrados.
30/37
Atividade: Executar testes

Entrada:
 Plano
de testes
 Projeto de testes
 Componentes de teste

Saída:
 Log
de defeitos de integração
31/37
Atividade: Executar testes






Executar os procedimentos de teste
Avaliar a execução dos testes
Recuperar testes interrompidos
Verificar os resultados
Investigar os resultados inesperados
Registrar defeitos encontrados
32/37
Atividade: Avaliar testes
Projetista de
Testes
Desenvolvedor
Testador
Elaborar Plano
de Testes
Avaliar
Testes
Projetar
Testes
Implementar
Testes
Executar
Testes
33/37
Atividade: Avaliar testes

Tem por objetivo medir quantitativamente o
progresso dos testes e, opcionalmente, gerar
um relatório de avaliação dos testes.
34/37
Avaliar testes: entrada x saída

Entrada:
 Plano
de testes
 Projeto de testes

Saída:
 Avaliação
dos testes (opcional)
35/37
Avaliar testes: passos


Avaliar cobertura dos casos de teste
Verificar se os critérios de completude e
sucesso dos testes foram atingidos
36/37
O Fluxo de Testes
© Alexandre Vasconcelos
amlv@cin.ufpe.br
alexandre@qualiti.com.br
Centro de Informática da UFPE/
Qualiti Software Processes
37/37
Download

O Fluxo de Testes - Sefaz-AL