Teste de WS - Compressed
Teste de WS - Compressed
Teste de WS - Compressed
3 - O que RTF?
Uma RTF uma atividade de garantia de qualidade de software executada por
engenheiros de software e outros profissionais.
4 - Para que serve a RTF?
Descobrir erros na funo, lgica ou implementao
Verificar se o software atende aos requisitos
Garantir que o software foi representado de acordo com os padres
Obter um software que seja desenvolvido uniformemente
Tornar os projetos mais gerenciveis
CONTEDO
Unidade 1 Importncia do teste de software
O teste nas fases de desenvolvimento de um software.
O teste na engenharia de sistemas e de programas
CONTEDO
Unidade 3 Teste no programa
Depurao
Teste de caixa branca
CONTEDO
Unidade 4 Teste na implantao do sistema
Teste de Unidade
Teste de Integrao
Teste de Validao
Teste de Sistema
Teste na Migrao
CONTEDO
Unidade 5 Teste de software em sistema em produo
Teste de software nos diversos tipos de manuteno
Confiabilidade
Disponibilidade
Unidade 6 Ferramentas de teste de software
Ferramentas de teste no desenvolvimento de sistema
Ferramentas de teste para o programa
Ferramentas de teste para o ambiente Web
A IMPORTNCIA DO TESTE
A IMPORTNCIA DO TESTE
com
perfeio,
desenvolvimento
CUSTO DO REPARO
Custo
Requisitos
Codificao
Entrega
Estgio de
desenvolvimento
A IMPORTNCIA DO TESTE
mudana
curva real
ndice de
falhas
curva idealizada
tempo
10
determinar
se
ele
alcana
os
resultados
observado.
13
ESTRATGIAS DE TESTE
Todas estratgias fornecem um modelo para o teste e tm
basicamente as seguintes caractersticas:
14
ESTRATGIAS DE TESTE
Todas estratgias fornecem um modelo para o teste e tm
basicamente as seguintes caractersticas:
ESTRATGIAS DE TESTE
A atividade de teste o processo de executar um programa
com a inteno de descobrir um erro.
16
teste.
Escrever casos de teste para condies de entrada
vlidas e invlidas.
Inspecionar o resultado de cada teste por completo.
Alocar os programadores mais criativos para teste.
17
O PROCESSO DE TESTE
O processo de teste de software deve basear-se em uma
metodologia aderente ao processo de desenvolvimento,
com pessoal tcnico qualificado, ambiente e ferramentas
adequadas.
Esta metodologia de teste deve ser o documento bsico
para organizar a atividade de testar aplicaes no contexto
da empresa. Assim como o processo de desenvolvimento de
software, teste de software tambm possui um ciclo de vida:
18
O PROCESSO DE TESTE
Planejamento
Procedimentos
Iniciais
Especificao
Execuo
Preparao
19
Entrega
O PROCESSO DE TESTE
Planejamento: Elaborao e reviso da Estratgia de teste
e do plano de teste;
20
O PROCESSO DE TESTE
Procedimentos iniciais: Consiste na elaborao de
documento com o estabelecimento de um acordo entre as
partes envolvidas no projeto de teste (usurios e tcnicos):
21
O PROCESSO DE TESTE
Especificao: Elaborao e reviso dos casos de teste ,
scripts ( no caso de ferramentas de automao de testes)
e dos roteiros de Teste e execuo dos testes de verificao
23
O PROCESSO DE TESTE
H muitas estratgias que podem ser utilizadas para testar
um software. Uma das estratgias de teste que preferida
pela maioria das equipes a viso incremental do teste,
comeando com o teste das unidades individuais de
O PROCESSO DE TESTE
Testes Unitrios: So realizados no estgio mais baixo da
escala de testes e so aplicados nas menores componentes
de cdigos criados, visando garantir que estes atendem as
isoladamente
ou
que
possam
separadamente.
ser
testado
O PROCESSO DE TESTE
Testes
de
integrao:
So
executados
em
uma
juntos,
conforme
as
especificaes.
26
O PROCESSO DE TESTE
Teste de sistema: So realizados pela equipe de testes,
visando a execuo do sistema como um todo ou um
subsistema (parte de um sistema), dentro de um ambiente
O PROCESSO DE TESTE
Teste de aceitao: So os testes finais de execuo do
sistema, realizados pelos usurios, visando verificar se a
soluo atende aos objetivos
requisitos,
no
que
diz
respeito
funcionalidade
28
O PROCESSO DE TESTE
Ao tratar os testes como um processo organizado e muitas
vezes paralelo e integrado ao processo de desenvolvimento,
os custos de manuteno sero reduzidos. Segundo Myers,
29
O PROCESSO DE TESTE
Os testes unitrios podem remover entre 30% e 50 %
dos defeitos dos programas;
software;
3. Compreender e identificar a origem e a causa do erro;
4. Compreender e implementar tcnicas e estratgias
para identificao do erro.
INTRODUO
medida que o trabalho da engenharia de software
desenvolvido, normal que ocorram erros. importante
que estes erros sejam encontrados e corrigidos antes que
INTRODUO
Lembre-se: Errar humano e, embora algumas pessoas
captem bem alguns de seus erros, outros tantos escapam
mais facilmente a quem lhe deu origem do que a outras
pessoas.
Uma reviso genericamente falando, uma forma de usar
a diversidade de um grupo de pessoas para:
INTRODUO
Apontar aperfeioamentos necessrios no produto de
uma nica pessoa ou de uma equipe.
Confirmar aquelas partes de um produto em que
aperfeioamentos so indispensveis ou desnecessrios.
Obter trabalho tcnico de qualidade mais uniforme, ou
INTRODUO
Diferentemente da reviso de software, A depurao de
software
comumente
definida
como
tarefa
de
INTRODUO
A depurao durante a codificao um atividade
complementar de codificao.
J a depurao depois do teste ativada pelo teste
bem-sucedido, isto , revela a presena de defeitos.
A depurao durante a manuteno ocorre pode
REVISES TCNICAS
So utilizadas logo no incio do processo de Gesto de
Qualidade.
REVISES TCNICAS
Por que so importantes? (cont.)
REVISES TCNICAS
Impacto dos defeitos de software nos custos
Muitas vezes o termo erro utilizado para indicar um
problema de qualidade que descoberto antes do software
ser liberado ao usurio final.
Utilizamos a revises tcnicas para encontrar erros
REVISES TCNICAS
Impacto dos defeitos de software nos custos
Segundo Pressman, diversos estudos e anlise sobre o
tema indicam que a atividades de projeto introduzem de 50
a 60% de todos os erros, durante a gesto da qualidade.
Entretanto, tcnicas de reviso demonstraram ser at 75%
12
REVISES TCNICAS
Impacto dos defeitos de software nos custos
O benefcio das revises a descoberta precoce dos
defeitos de software, de forma que possam ser corrigidos
antes do passo seguinte.
Ao detectar e suprimir estes erros, o processo de reviso
13
como
maturidade
do
processo
de
(ex:
encontrar
defeitos,
obter
compreenso,
14
sucedida
se
for
controlada e assessorada.
15
adequadamente
planejada,
16
18
19
problemas de reviso.
21
22
23
ABORDAGENS DA DEPURAO
Independente da abordagem adotada, a depurao tem um
objetivo primordial, que encontrar e corrigir a causa de
erro ou defeito.
25
ABORDAGENS DA DEPURAO
O processo de depurao
guiado pela certificao/refutao
das hipteses levantadas, bem
como pela gerao de novas
hipteses e refinamentos das j
existentes.
Selecione hiptese
Verifique hiptese
Sim
26
Corrigido?
No
ABORDAGENS DA DEPURAO
Segundo Pressman, o objetivo da depurao alcanado
por uma combinao de avaliao sistemtica, intuio e
sorte, sendo definido basicamente trs estratgias (Myers):
1. Fora bruta
2. Rastreamento (backtracking)
3. Eliminao da causa
27
ABORDAGENS DA DEPURAO
Fora bruta
Mtodo mais comum e menos eficiente;
imensa
planejamento.
28
quantidade
de
teste,
mas
sem
ABORDAGENS DA DEPURAO
Rastreamento (backtracking)
A partir do local do sintoma descoberto, rastreia-se para
comum,
pois
porm
nmero
restrita
de
caminhos
programas
retroativos
29
ABORDAGENS DA DEPURAO
Eliminao da causa
Os dados relacionados ocorrncia de erros so
30
CONSIDERAES PSICOLGICAS
Efetuar testes e depurao um trao humano inato;
Certas pessoas so boas para fazer isso, outras no;
A depurao uma das partes mais frustrantes da
CORREO DO ERRO
Segundo Pressman, uma vez encontrado o erro, ele precisa
ser corrigido. A correo de um defeito pode introduzir
outros erros e, portanto, causar mais danos do que trazer
benefcios.
32
CORREO DO ERRO
Questionamentos de Van Vlek:
programa?
Em muitas situaes, o defeito provocado por um
padro de lgica errneo que pode ser reproduzido em
outro lugar.
33
CORREO DO ERRO
Questionamentos de Van Vlek:
34
CORREO DO ERRO
Questionamentos de Van Vlek:
j no incio?
Se corrigirmos o processo, bem como o produto,
o defeito pode ser eliminado de todos os programa
futuros.
35
TESTE NO PROGRAMA
TESTE CAIXA BRANCA E
TESTE CAIXA PRETA
INTRODUO
INTRODUO
Testes podem ser usados para descobrir a presena de
erros, mas no para mostrar a sua ausncia.
Testes de software o processo de executar o software
de uma maneira controlada com o objetivo de descobrir
diferenas
entre
comportamento
previsto
comportamento observado.
Um teste bem-sucedido aquele que revela um erro
ainda no descoberto.
5
INTRODUO
demonstrar
que
cada
funo
operacional;
Abordagem: Teste de Caixa Preta
totalmente
Baseia-se
num
procedimentais.
minucioso
exame
dos
detalhes
10
sua validade.
Teste de Condio
Teste de Fluxo de Dados
Teste de Ciclo
12
Complexidade
Ciclomtica
uma
mtrica
que
14
Caminho 1: 1-11
Caminho 2: 1-2-3-8-1 ...
Caminho 3: 1-2-4-5-7-8-1 ...
Caminho 4: 1-2-4-6-7-8-1 ...
1
2
4
6
R3 5
3
R2
7
8
9
17
R4
R1
TESTE DE CONDIO
TESTE DE CONDIO
Teste de Ramos: Para uma condio C composta, os
ramos verdadeiro e falso de C e todas as condies simples
em C precisam ser executadas pelo menos uma vez.
19
TESTE DE DOMNIO
Para uma expresso E1 <operador relacional> E2
3 testes so exigidos para tornar o valor de E1 >, = ou <
que o de E2.
21
21
Laos Aninhados:
1. Inicie pelo lao mais interno. Fixe os outros laos para
valores mnimos.
2. Realize testes de laos simples para o lao mais interno.
3. Trabalhe para fora, realizando testes para o lao seguinte,
mas mantendo todos os ciclos externos nos valores mnimos
Laos Concatenados:
1. Se laos independentes dos demais:
usar abordagem de laos simples.
23
24
26
operao do sistema?
27
Particionamento em Equivalncia
Anlise do Valor Limite
Teste de Matriz Ortogonal
Baseado em Grafo
29
30
invlidas so definidas.
31
definidas.
32
Qualquer nmero
(neste intervalo)
35
Parmetros de Teste
P1
P2
P3
P4
1
1
1
1
1
2
2
2
1
3
3
3
2
1
2
3
2
2
3
1
2
3
1
2
3
1
3
2
3
2
1
3
3
3
2
1
39
TESTE NO PROGRAMA
TESTE DE APLICAES DA WEB
INTRODUO
Com o crescimento da Internet e a evoluo das tecnologias
envolvidas, as aplicaes na WEB tambm evoluram. Hoje grande
parte dos negcios da organizaes tambm esto na WEB e
consequentemente ocorreu um aumento nos nmeros de
INTRODUO
O teste de uma aplicao WebApp (aplicaes para Web) um
conjunto de atividades relacionadas com um nico objetivo:
Descobrir erros
Mas como?
INTRODUO
Para atingir este objetivo deve ser utilizada uma estratgia
de teste que abrange as revises e o teste executvel.
INTRODUO
no contedo,
na funo,
na usabilidade,
na navegabilidade,
no desempenho,
na capacidade,
na segurana das aplicaes e etc.
INTRODUO
A qualidade, segundo Pressman (2011) incorporada a
uma aplicao
projeto.
No se pode testar a qualidade. Se ela no estiver l
antes de voc comear a testar, no estar l quando
DIMENSES DE QUALIDADE
Segurana
Interoperabilidade
Compatibilidade
Contedo
Funo
Estrutura
Qualidade
Desempenho
Usabilidade
Navegabi
-lidade
10
DIMENSES DE QUALIDADE
Contedo: avaliado no nvel semntico e sinttico. No
nvel sinttico examina-se a ortografia, pontuao e
gramtica. No nvel semntico so verificadas a exatido,
11
DIMENSES DE QUALIDADE
Estrutura: avaliada para assegurar o fornecimento
apropriado do contedo e funo da aplicao. Que seja
extensvel e possa ser mantida medida que novo
12
DIMENSES DE QUALIDADE
Navegabilidade: testada para assegurar que toda a
sintaxe e semntica de navegao sejam experimentadas
para descobrir quaisquer erros de navegao.
13
DIMENSES DE QUALIDADE
Compatibilidade: testada executando-se a aplicao em
uma variedade de diferentes configuraes hospedeiras
tanto no lado cliente quanto no lado servidor.
14
DIMENSES DE QUALIDADE
Segurana: testada para investigar vulnerabilidades
potenciais e tentar explorar cada uma delas. Qualquer
tentativa bem-sucedida de invaso considerada falha de
segurana.
15
16
desempenho e segurana.
19
20
unidade;
21
22
23
TESTE DE CONTEDO
O teste de contedo tenta descobrir erros antes que sejam
encontrados pelos usurios. Ele combina tanto as revises,
j estudadas nas aulas anteriores, quanto gerao de
TESTE DE CONTEDO
O revisor dever responder as seguintes perguntas:
As informaes so precisas?
As informaes so concisas e direcionadas ao assunto?
fcil para o usurio entender o layout do contedo?
As informaes apresentadas so consistentes internamente
TESTE DE CONTEDO
O revisor dever responder as seguintes perguntas:
O contedo ofensivo, confuso ou d margem a litgio?
O contedo desrespeita os direitos autorais existentes ou de
marcas registradas?
O contedo contm links que complementam o contedo
28
e etc.
29
Teste
de
compatibilidade:
Diferentes
computadores,
30
TESTE DE COMPONENTE
O teste de componente, tambm conhecido como teste de
funo, tem como objetivo tentar descobrir erros nas funes
da aplicao Web.
31
TESTE DE COMPONENTE
Cada caso de teste de componente especifica todos os
valores de entrada e sada esperada a ser fornecida pelo
componente.
do teste de componente.
32
TESTE DE NAVEGAO
Um usurio navega por uma aplicao WEB de modo muito
semelhante ao que um visitante caminha por uma loja ou
museu.
trilhados, muitas
33
TESTE DE NAVEGAO
Seu objetivo garantir que os mecanismos que permitem ao
usurios navegar atravs da aplicao Web estejam todos
em funcionamento e que cada unidade semntica de
Semntica
34
35
de
informaes
existentes,
implementam
37
dimensionamento
38
perguntas:
39
40
41
42
TESTE DE CONFIGURAO
O objetivo do teste de configurao (Pressman, 2011)
43
TESTE DE CONFIGURAO
Lado Servidor os casos de teste so projetados para
verificar se a configurao do servidor pode suportar a
aplicao sem erro. Perguntas a serem respondidas:
A aplicao totalmente compatvel com o sistema
operacional do servidor?
TESTE DE CONFIGURAO
As medidas de segurana permitem que a aplicao
seja executada sem a interferncia ou degradao do
desempenho?
A aplicao est adequadamente integrada com o
software de banco de dados?
Os
scripts
utilizados
pela
aplicao
corretamente?
45
executam
TESTE DE CONFIGURAO
Lado Cliente foca a compatibilidade da aplicao com
configuraes dos seguintes componentes:
Hardware:
CPU,
memria,
armazenamento
dispositivo de impresso;
Sistemas
operacionais:
Linux,
Macintosh
OS,
TESTE DE CONFIGURAO
Componentes de interface de usurio: Active X, java
Applets e outros.
Plug-ins: QuickTime, RealPlayer e outros.
Conectividade: Cabo, DSL, modem , WIFI.
Estes testes devem ser projetados onde cada categoria
TESTE DE SEGURANA
As aplicaes Web e os ambientes cliente e servidor nos
quais as aplicaes esto alojadas representam um alvo para
invasores externos, funcionrios insatisfeitos, concorrentes
48
TESTE DE SEGURANA
Vulnerabilidades:
no ambiente do lado do cliente,
49
TESTE DE DESEMPENHO
A medida que em que aumenta o nmero de usurios nas
aplicaes web, consequentemente ocorre um aumento do
nmero de transaes online ou na quantidade de dados
ocupado.
50
TESTE DE DESEMPENHO
O teste de desempenho usado para descobrir problemas
de desempenho que podem resultar, por exemplo, da falta de
recursos no lado do servidor, da largura da banda ou
51
TESTE DE DESEMPENHO
Este tipo de teste ajudar a responder as seguintes questes:
O tempo de resposta do servidor degrada de forma a tornarse inaceitvel?
Em que ponto, sob o ponto de vista dos usurios, transaes
ou cargas de dados, o desempenho se torna inaceitvel?
TESTE DE DESEMPENHO
Para obter respostas a essas perguntas so feios dois testes
diferentes de desempenho:
Teste de carga
53
TESTE DE DESEMPENHO
Teste de Carga
de
dados
processados
pelo servidor
transao (D)
54
por
TESTE DE DESEMPENHO
medida que o teste feito, so realizadas permutaes nas
variveis de acordo com os limites de operao normal do
sistema e coletas uma ou mais das seguintes medidas:
Resposta mdia do usurio;
Tempo mdio para o download de uma unidade
padronizada de dados;
Tempo mdio para processar uma transao;
55
TESTE DE DESEMPENHO
Teste de Esforo (stress) uma continuao do teste de
carga, e desta forma utilizam as mesmas variveis: T, N, D,
porm com seus limites operacionais excedidos.
A finalidade deste teste responder as seguintes questes:
O sistema degrada ou o servidor desliga quando excedida
56
TESTE DE DESEMPENHO
O
software
servidor
gera
servidor
mensagens
no
TESTE DE DESEMPENHO
Quais valores de N, T e D foram o ambiente servidor a
falhar? Como a falha se manifesta? So mandadas
notificaes automticas para o pessoal de suporte tcnico
no local do servidor?
Se o sistema falha, quanto tempo demora at que volte a
ficar on-line?
58