Introdução
Começar a testaré importante conhecer alguns termos
relacionados ao teste de software, são eles:
Validação, verificação e teste
Erro, falha e defeito
Domínio de entrada e saída
Caso de teste, dado de teste
Cenário e ambiente de teste
3.
Validação, Verificação
e Testede Software
Técnicas fundamentais para identificar se um software possui defeitos
e está de acordo com o especificado
Objetivo de todas as engenharias construir certo da primeira vez
- Software escrever testar modificar até obter o resultado desejado
Muito dispendioso
Boas chances de ter que refazer todo o projeto novamente
4.
Validação, Verificação
e Testede Software
Causa dos problemas nos softwares:
- ERRO HUMANO
- Solução: uso de ferramentas da engenharia de software
- Atividades: VV&T
5.
VV&T
Validação,
Verificação
e Teste
Garantir queo modo como o
software está sendo construído
quanto o produto estejam de acordo
com o especificado
Baseiam-se na execução de um
programa ou de um modelo
Não requer a execução ou a
existência de um programa ou
modelo executável
Realizada sobre a documentação
Estática:
Dinâmica:
Não se
restringem
ao produto
final!
6.
VV&T
Verificação:
Estamos construindo certoo produto?
Validação:
Estamos construindo o produto certo?
Teste
Executar programa ou modelo utilizando entradas em particular
e verificar se seu comportamento está de acordo com o esperado
7.
O que éTeste
de Software?
Verificar se o software está fazendo o que deveria fazer, de acordo
com os seus requisitos
Processo de executar um programa ou sistema com a intenção de
encontrar defeitos (teste negativo) [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 [Hetzel 1988]
8.
Objetivos do Teste
deSoftware
Encontrar defeitos no software, com a finalidade de serem corrigidos
antes de o produto ser entregue ao cliente.
Recurso: Execução do Sistema
Ideal: Encontrar o máximo de erros com mínimo de esforço
9.
Custo do Teste
Quantomais tarde se descobre o erro mais caro fica para corrigir
Regra 10 de Myers
Análise Produção
CUSTOS
Testes
Construção
Especificação
10.
Modelo de Desenvolvimento
deSoftware- Modelo V
Requerimentos
Análise
Desenho
Codificação
Processo Produto
Teste de Aceitação
Teste de Sistemas
Teste de Integracão
Teste de Unidade
teste
doc
doc
teste
doc
teste
doc
teste
O modelo em V (Validação e Verificação) demonstra a importância do teste de software a cada etapa
do desenvolvimento e cada um sendo aplicado com um objetivo específico conforme o momento da
aplicação (nível ou estratégia de teste)
Erro, Falha eDefeito
O ser humano comete ERRO (engano) que produz um DEFEITO (dano,
bug), no código, em um software, sistema ou documento. Se um de defeito
no código for executado o sistema pode falhar ao tentar fazer o que devia (ou,
algumas vezes, o que não devia) causando uma FALHA. Defeitos no software,
sistema ou documentos resultam em falhas, mas nem sempre os defeitos
causam falhas.
DEFEITO! falha!
13.
Domínio
de entrada
Conjunto detodos os possíveis valores que podem se
utilizados para executar um programa
Exemplo: P com parâmetros de entrada 2 inteiros x e y,
onde y ≥ 0 e computa a função xy
Domínio de entrada = pares de números inteiros, sendo
que y deverá ser positivo ou igual a zero
14.
Domínio
de Saída
Conjunto desaídas possíveis de uma determinada funcionalidade,
geralmente estão associadas as regras de negócio e as restrições
É importante conhecer o domínio de saída para gerar as respostas
esperadas e determinar quantos dados de teste deverão ser gerados
para evidenciar cada comportamento do sistema(domínio de saída)
Do exemplo anterior é o valor de xy ou uma mensagem de erro
15.
Dado e Caso
deTeste
Dado de Teste
É um elemento do domínio de entrada
Caso de Teste
É um par formado por um dado de teste mais o resultado
esperado para a execução do programa com aquele dado de teste
Do exemplo anterior:
Casos de teste: <(2,3), 8>, <(4,3),64>, <(3, -1), “erro”>
Login de
Usuário
Casos deTeste
ENTRADA SAÍDA ESPERADA
Informar login e senha corretos
O sistema valida as informações
e carrega a tela principal
Informar login incorreto
É exibido o alerta “Login e/ou
senha inválido(s). Verifique, por favor.”
Informar senha incorreta
É exibido o alerta “Login e/ou senha
inválido(s). Verifique, por favor.”
18.
Login de
Usuário
Casos deTeste
ENTRADA SAÍDA ESPERADA
Não informar o login
É exibido o alerta “O campo
login deve ser preenchido.
Verifique, por favor”
Não informar a senha
É exibido o alerta “O campo
senha deve ser preenchido.
Verifique, por favor”
Tentar ultrapassar maxlenghts
Os campos devem estar
com maxlengths definidos
Verificar as atribuições do usuário
(teste de segurança)
No momento em que ocorrer
o login apenas as funcionalidades
com permissões atribuidas devem ser
exibidas ao usuário
Logar com o mesmo usuário
em dois browsers
É exibido um alerta notificando a
duplicidade e é notificada por e-mail
a ocorrência desta redundância
ao usuário
Verificar sintaxe A sintaxe do texto deve estar correta.
19.
Pesquisa
por Período
Casos deTeste
ENTRADA SAÍDA ESPERADA
Informar data início e data fim
em uma seqüência cronológica
O sistema retorna todos os
registros cadastrados entra as datas
informadas
Informar apenas a data
de início
O sistema pode exigir ou não a data
fim como obrigatório, vai depender do
critério do analista do sistema
(o testador consulta o analista)
Informar apenas a data de fim
O sistema pode exigir ou não a
data início como obrigatório, vai
depender do critério do analista do
sistema (o testador consulta o analista)
Não informar nenhum
dos campos
É exibido o alerta para que o usuário
preencha o(s) campo(s) obrigatório
para a consulta (a obrigatoriedade,
mais uma vez, depende do analista).
Informar a data fim anterior
à data início
É exibido o alerta para que o usuário
preencha o(s) campo(s) obrigatório
para a consulta (a obrigatoriedade,
mais uma vez, depende do analista).
20.
Conjunto de Teste
Conjuntode Teste ou Conjunto de Casos de Teste:
Conjunto de todos os casos de teste utilizados
durante a atividade de teste
21.
Cenário de Teste
Cenáriode teste descreve a situação ou ambiente que deve ser testado,
diferente do caso de teste, que descreve como algo deve ser testado.
Geralmente todos os cenários de teste são seguidos por seus respectivos
casos de teste, que irão detalhar como o cenário deverá ser testado.
22.
Ambiente de Teste
Todaa infra-estrutura onde
o teste será executado
Finalidade: propiciar a realização
de testes em condições conhecidas
e controladas
Deve ser tratado na estratégia de teste
e planejamento
Deve ser similar ao ambiente utilizado
pelo usuário
23.
Princípios
de Teste
Todos ostestes devem ser
relacionados aos requisitos do cliente
Os testes devem ser planejados
muito antes do início do teste
Princípio de Pareto
80% de todos os erros descobertos durante o teste vão provavelmente
se relacionar a 20% de todos os componentes do programa