Anda di halaman 1dari 39

Desenvolvimento de Sistemas Fluxo de Testes

Alexandre Monteiro

Fluxo de Testes

Objetivo

Avaliar o nvel de qualidade do produto Verificar a correta integrao 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 iterao; Projetar e implementar os testes, definindo casos de teste; Identificar defeitos e assegurar que suas correes so prioritrias entrega do produto.

Relacionamento com os demais Fluxos

No fluxo de planejamento e gerenciamento, os testes para cada iterao so planejados e documentados no plano da iterao; O fluxo de requisitos o primeiro passo para a identificao dos testes que sero executados; O fluxo de anlise e projeto descreve como desenvolver um projeto e isto outro passo para a definio de testes; O alvo principal das atividades de teste a aplicao do mesmo aos resultados da implementao.

O que um Modelo de Teste?


Um modelo de teste consiste de: Casos de teste Procedimentos de teste Um caso teste pode ser implementado por um ou mais procedimentos. Um procedimento de teste implementa (todo ou parte de) um ou mais casos de teste. Use cases so a primeira entrada para identificar casos de teste.
Caso de teste Caso de teste

OK Saque de um valor pr-definido

OK Saque de um valor digitado

Procedimento de teste

OK Finalizar saque Iniciar saque de valor pr-definido

OK

OK Finalizar saque de um valor digitado

Caso e procedimento de teste em um Sistema ATM.

Artefatos do Fluxo de Testes


Projeto de Testes
Plano de Testes Avaliao dos Testes Casos de Teste Procedimentos de Teste

Componentes de Teste

Logs de Defeitos

Plano de Testes

Descreve as estratgias de teste, o esforo necessrio para sua realizao e seu cronograma; Na estratgia de teste esto definidos os tipos de teste que sero executados na iterao e os objetivos que devem ser atingidos.

Plano de Testes
1 INTRODUO ________________________________________________________________ 3 1.1 VISO GERAL DESTE DOCUMENTO _________________________________________________ 3 1.2 REFERNCIAS ________________________________________________________________ 3 2 REQUISITOS A TESTAR _______________________________________________________ 3 2.1 IDENTIFICAO DOS REQUISITOS A TESTAR _________________________________________ 4 3 ESTRATGIA_________________________________________________________________ 4 3.1 3.2 3.3 3.4 4 ESTGIOS E TIPOS DOS TESTES ____________________________________________________ 4 TCNICA ____________________________________________________________________ 5 CRITRIOS DE CONCLUSO E SUCESSO______________________________________________ 5 CONSIDERAES ESPECIAIS ______________________________________________________ 5

RECURSOS ___________________________________________________________________ 5 4.1 4.2 4.3 4.4 RECURSOS HUMANOS __________________________________________________________ 5 AMBIENTE DE TESTE (HARDWARE E SOFTWARE) ______________________________________ 5 FERRAMENTAS________________________________________________________________ 5 DADOS ______________________________________________________________________ 6

CRONOGRAMA_______________________________________________________________ 6

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-condies de entrada e os valores e ps-condies de sada; Um procedimento de teste especifica como realizar um ou diversos casos de teste. um conjunto de instrues para execuo e avaliao de resultados para um ou mais casos de teste, que podem ser efetivados manualmente ou atravs de ferramentas.

Projeto de Testes
1 INTRODUO ________________________________________________________________ 3 1.1 VISO GERAL DESTE DOCUMENTO _________________________________________________ 3 1.2 REFERNCIAS ________________________________________________________________ 3 2 CASOS DE TESTE _____________________________________________________________ 4 2.1 IDENTIFICAO 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 IDENTIFICAO DOS PROCEDIMENTOS DE TESTE ______________________________________ 5 [ProcT001] <Nome do procedimento de teste> ________________________________________ 5 [ProcT] <Nome do procedimento de teste> _________________________________________ 5

Avaliao dos Testes

uma avaliao dos resultados dos esforos do teste como, por exemplo, a anlise da cobertura dos casos e procedimentos de teste

Logs de Defeito

um registro de um defeito encontrado ao ser executado um teste.

Componente de Teste

Automatiza um ou mais procedimentos de teste ou partes deles e pode ser desenvolvido usando-se uma linguagem de programao/script ou gerado atravs de uma interao com uma ferramenta de testes; Os componentes podem ser classes, pacotes, subsistemas ou scripts.

Consideraes Gerais sobre os Artefatos do Fluxo de Testes

Devido natureza iterativa do processo de desenvolvimento, muitos dos artefatos produzidos nas primeiras iteraes como casos e procedimentos de teste so usados em iteraes posteriores como testes de regresso.

Artefatos x Responsveis no Fluxo Simplificado de Testes


Projetista de testes Testador de integrao Testador de sistema Programador

responsvel por

responsvel por

responsvel por

responsvel por

Plano de testes
Projeto de testes Avaliao dos testes Log de defeitos de Log de defeitos Subsistemas, (casos e integrao de sistema Componentes, Classes, procedimentos) Pacotes e Scripts de teste

Viso Simplificada das atividades


Projetista de Testes Elaborar PlanoProjetar Testes de Testes Avaliar Testes

Testador de Integrao

Executar Testes de Integrao

Testador de Sistema

Executar Testes de Sistema

Programador

Implementar Testes

Atividade do projetista de testes: Elaborar plano de testes

Tem por objetivo documentar as informaes relevantes ao planejamento dos testes para uma iterao.

Elaborar plano de testes: entrada x sada

Entrada:
Documento

de requisitos Modelo de casos de uso

Sada:
Plano

de testes

Elaborar plano de testes: passos

Identificar requisitos a serem testados Definir prioridades Definir estratgias de testes Definir recursos Definir cronograma Notificar o gerente do projeto

Viso das atividades


Projetista de Testes Elaborar Plano Projetar Testes de Testes Avaliar Testes

Testador de Integrao

Executar Testes de Integrao

Testador de Sistema

Executar Testes de Sistema

Programador

Implementar Testes

Atividade do projetista de testes: 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.

Projetar testes: entrada x sada

Entrada:
Documento

de requisitos Modelo de casos de uso Plano de testes

Sada:
Projeto

de testes Plano de testes (atualizado)

Projetar testes: passos


Identificar e descrever casos de teste Identificar e estruturar procedimentos de teste

Viso das atividades


Projetista de Testes Elaborar Plano Projetar Testes de Testes Avaliar Testes

Testador de Integrao

Executar Testes de Integrao

Testador de Sistema

Executar Testes de Sistema

Programador

Implementar Testes

Atividade do programador: Implementar testes

Tem por objetivo automatizar procedimentos de teste criando componentes de teste consistentes com os casos de teste associados.

Implementar testes: entrada x sada

Entrada:
Projeto

de testes

Sada:
Componentes

de teste

Implementar testes: passos


Gerar componentes de teste Identificar funcionalidades especficas para teste nos modelos de projeto e implementao Definir conjunto de dados externos

Viso das atividades


Projetista de Testes Elaborar PlanoProjetar Testes de Testes Avaliar Testes

Testador de Integrao

Executar Testes de Integrao

Testador de Sistema

Executar Testes de Sistema

Programador

Implementar Testes

Atividade do testador de integrao: Executar testes de integrao

Tem por objetivo executar testes de integrao para cada build do sistema, avaliar seus resultados e registrar os defeitos encontrados.

Executar testes de integrao: entrada x sada

Entrada:
Plano

de testes Projeto de testes Componentes de teste

Sada:
Log

de defeitos de integrao

Executar testes de integrao: passos

Executar os procedimentos de teste Avaliar a execuo dos testes Recuperar testes interrompidos Verificar os resultados Investigar os resultados inesperados Registrar defeitos encontrados

Viso das atividades


Projetista de Testes Elaborar Plano Projetar Testes de Testes Avaliar Testes

Testador de Integrao

Executar Testes de Integrao

Testador de Sistema

Executar Testes de Sistema

Programador

Implementar Testes

Atividade do testador de sistemas: Executar testes de sistema

Tem por objetivo executar testes de sistema para o ltimo build de cada iterao do sistema, avaliar seus resultados e registrar os defeitos encontrados.

Executar testes de sistema: entrada x sada

Entrada:
Plano

de testes Projeto de testes Componentes de teste

Sada:
Log

de defeitos de sistema

Executar testes de sistema: passos

Executar os procedimentos de teste Avaliar a execuo dos testes Recuperar testes interrompidos Verificar os resultados Investigar os resultados inesperados Registrar defeitos encontrados

Viso das atividades


Projetista de Testes Elaborar Plano Projetar Testes de Testes Avaliar Testes

Testador de Integrao

Executar Testes de Integrao

Testador de Sistema

Executar Testes de Sistema

Programador

Implementar Testes

Atividade do projetista de testes: Avaliar testes

Tem por objetivo medir quantitativamente o progresso dos testes e, opcionalmente, gerar um relatrio de avaliao dos testes.

Avaliar testes: entrada x sada

Entrada:
Plano

de testes Projeto de testes

Sada:
Avaliao

dos testes (opcional)

Avaliar testes: passos


Avaliar cobertura dos casos de teste Verificar se os critrios de completude e sucesso dos testes foram atingidos