Escolar Documentos
Profissional Documentos
Cultura Documentos
Agenda
Conceitos gerais
Principais Tipos de Teste
Testes Unitrios
Testes Funcionais
O que so testes de
software?
Atividades realizadas ao longo do desenvolvimento,que
verificam se o software e seus componentes
atendem s suas especificaes.
O que so testes de
software?
Atividades controladas visando
identificar problemas
Envolve aes que vo do levantamento
de requisitos at a execuo dos testes
propriamente ditos
Verifica resultados encontrados X
resultados esperados
Prevenir, localizar e documentar
defeitos
Minimizar o impacto potencial de
defeitos, detectando-os antes da
entrega do produto ao cliente
Custo de Correo
O custo de 1 problema 200 vezes maior
se for reparado aps a implantao
Estgio
1a2
Requisitos
Projeto
10
Codificao
20
Teste de Unidade
50
Teste de Aceitao
200
Manuteno
Tipos de Testes
Teste de Unidade
Teste de Integrao
Teste de Regresso
Teste de Sistema
Teste de Aceitao
Teste de Integridade de Dados e de Banco de Dados
Teste Funcional
Diferenas
Teste de Interface com o usurio
Diferenasentre
entrealguns
algunstipos
tiposde
de
testes
Teste de desempenho
testesno
noso
somuito
muitoclaras
claras
Teste de Carga
Ex.:
Ex.:Teste
TesteFuncional
FuncionalXXTeste
Teste
de
Teste de Stress
deSistema
SistemaXXTeste
Testede
de
Aceitao
Aceitao
Teste de Segurana
Voc
Teste de Tolerncia a Falhas
Vocprovavelmente
provavelmentedeve
deveter
terem
em
mente
Teste de Recuperao
mentealgum
algumtipo
tipode
deteste
testeque
que
no
noest
estnessa
nessalista
lista
Teste de Configurao
...
Boa Prtica
importante fazer um bom levantamento de
Requisitos
Identificar os cenrios
O que obrigatrio
Fazer prottipo de tela
Tirar ambigidades
Boas Prticas
Os testes devem ser repetveis
Deve-se prevenir a propagao de defeitos entre as
fases do desenvolvimento
Testes de sistemas ou funcionais devem ser
executados por uma equipe preparada e independente
da equipe de desenvolvimento.
Devem existir ambientes isolados para a realizao
dos diversos tipos de teste
Implementar testes automatizados
Focar os testes na parte crtica do sistema
Testes Unitrios
Introduo
Teste Unitrio
O teste unitrio implementado com base no
menor elemento testvel (unidades) do
software.
Implica em testar a estrutura interna (como
fluxo lgico e de dados), a funo da unidade e
os comportamentos observveis.
O que unidade?
Componente, classe, mtodo, etc.
Caixa Branca
Tecnologias
JUnit e DBUnit
JUnit
Realiza testes unitrios
Ex: Verifica se algum mtodo realiza o clculo
esperado.
API - http://www.junit.org/
Demonstrao
E o DBUnit?
Motivao
CPF
Nome
Endereo
11111111
Joo
Rua da Passagem
122
22222222
Maria
33333333
Ana
CPF
Nome
Endereo
11111111
Joo
Rua da Passagem
122
22222222
Maria
33333345
Ana
Motivao
...
...
Motivao
Modelo Relacional
Procedure (.....)
Resultados Esperados
Tabela Temporria
Coluna1
Coluna2
Coluna3
Coluna1
Coluna2
Coluna3
xxxxxx
xxxxx
xxxxx
xxxxxx
xxxxx
xxxxx
xxxxx
xxx
xx
xxxxx
xxx
xx
xxx
xx
xx
xxx
DBUnit
Extenso dos casos de teste do JUnit
Consistncia do modelo de dados
Oferece mecanismos de exportao
Carga do banco de dados antes dos
testes
Mtodos de comparao
Demonstrao
Concluso
DBUnit uma extenso do JUnit
DBUnit realiza testes unitrios voltados
para banco de dados
DBUnit uma API gratuita.
Testes Funcionais
Testes Funcionais
Teste caixa preta que simula a interao
do usurio com o sistema
Geralmente baseado em cenrios de
testes extrados dos casos de uso ou de
descries das funcionalidades
Representam um dos testes de maior nvel
de granularidade
Utilizado em fases mais avanadas do
ciclo de desenvolvimento
Teste Funcional
Documentao de Testes
Qual a importncia de
documentar casos de teste?
Descrever o passo a passo de cada caso de teste.
Importante para permitir a disseminao do
conhecimento e para ajudar na manuteno.
Existem diversas ferramentas no mercado que
auxiliam nesse processo de documentao,
como:
Rational Test Manager
Rational Quality Manager
...
Demonstrao do Rational
Test Manager
Fim!!
Perguntas?
1/8/2011
@LES/PUC-Rio
27