Automação de Testes: Características, Vantagens e

Transcrição

Automação de Testes: Características, Vantagens e
SIMPROS 2007
Automação de testes:
características vantagens e
características,
limitações.
SIMPROS 2007
Miguel Argollo
Cenpra
1
CenPRA: Centro de Pesquisas Renato Archer.
Incentivar o desenvolvimento
da pesquisa científica e
tecnológica nas atividades
relacionadas à tecnologia da
informação.
„Promove
e realiza projetos de
Pesquisa e Desenvolvimento;
„Realiza
atividades de suporte às
empresas do setor de Tecnologia
da Informação.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 2
1
SIMPROS 2007
CenPRA: Centro de Pesquisas Renato Archer.
Projeto: Tecnologia para Teste de Software em
Ambientes Empresariais
Objetivo: Desenvolver uma metodologia para a
introdução ou a melhoria do processo de teste nas empresas
produtoras de software.
Cursos:
Módulo I - Fundamentos de Teste de Software
Módulo II - Técnicas de Teste de Software
Módulo III - Documentação do Teste de Software
Módulo IV - Processo de Teste Software
Módulo V – Automação de Teste de Software
© CenPRA, 2007
Pag.: 3
SIMPROS 2007
Automação
ç
de testes:
características, vantagens
e limitações.
4
© CenPRA – 2007.
2
SIMPROS 2007
Programa do Workshop (Curso)
„ Objetivo do Workshop (Curso)
„ Revisão
„ Introdução
„ Técnicas & demos
Captura & executa – Selenium
„ Scripts estruturados
„ Teste dirigidos por tabelas – Fitnesse
„ Teste dirigidos por palavras-chave - Watir
„ Teste de desempenho - Jmeter
„ Automação & desenvolvimento
„ Conclusão
„
© CenPRA, 2007
Pag.: 5
Objetivo do workshop.
„ O workshop apresentará os principais conceitos associados à
automação de testes de software, abordando as características
e estilos de automação, suas vantagens e limitações, os custos
associados e os principais requisitos para a implantação de
uma iniciativa de automação de testes de sucesso.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 6
3
SIMPROS 2007
Revisão: expectativas sobre automação.
„ O principal motivo em se
adotar uma ferramenta de
automação deve ser a
diminuição do esforço
associado ao teste de um
novo produto ou de uma
nova versão de um produto
existente.
© CenPRA, 2007
Pag.: 7
Revisão: expectativas sobre automação.
„ Uma boa ferramenta
automatiza as atividades mais
importantes e dispendiosas
do teste de um aplicativo,
diminuindo bastante a
necessidade de um processo
de teste detalhado.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 8
4
SIMPROS 2007
Revisão: expectativas sobre automação.
„ As ferramentas atuais são
fáceis de ser empregadas, de
forma que o trabalho necessário
para a automação dos testes de
um aplicativo é razoavelmente
simples.
© CenPRA, 2007
Pag.: 9
Revisão: expectativas sobre automação.
„ Um bom processo de testes
suportado por uma boa
ferramenta permite que todos
os testes necessários possam
ser automatizados com o
tempo.
„ Se um teste vale a pena ser
executado manualmente, vale a
pena ser automatizado.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 10
5
SIMPROS 2007
Revisão: expectativas sobre automação.
„ Uma equipe especialista no
aplicativo, que tenha um bom
conhecimento de teste de
software e que domine a
ferramenta de automação, é
suficiente para automatizar
os testes deste aplicativo.
© CenPRA, 2007
Pag.: 11
Revisão: expectativas sobre automação.
„ Não existe sentido em repetir
um teste já realizado com
sucesso, sendo preferível
projetar e executar um novo
teste, que tem maior
probabilidade de identificar
novas falhas.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 12
6
SIMPROS 2007
Revisão: expectativas sobre automação.
„ O grande benefício da
automação vem da
possibilidade de repetir
automaticamente um teste
anteriormente realizado.
© CenPRA, 2007
Pag.: 13
Revisão: conceitos básicos sobre teste.
Teste de software consiste na verificação dinâmica do
comportamento de um programa,
através de um conjunto finito de casos de teste,
adequadamente selecionado
a partir de um conjunto infinito de possibilidades,
contra um comportamento esperado especificado. (swebok)
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 14
7
SIMPROS 2007
Revisão: conceitos básicos sobre teste.
Teste é o processo de executar um software com o objetivo de
verificar se ele satisfaz requisitos específicos e de detectar
erros.
British Computer Society
SIGST
© CenPRA, 2007
Pag.: 15
Revisão: conceitos básicos sobre teste.
Planejamento
Projeto
Execução
Acompanhamento
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 16
8
SIMPROS 2007
Revisão: conceitos básicos sobre teste.
Planejamento
Apanha informações sobre produto;
Define abordagem de teste
Identifica equipe, tarefa, cronograma, ...
Projeto
Projeta requisitos de teste
Detalha abordagem de teste
Define casos de teste (dados de entrada e
resultados)
Execução
Executa programa com casos de testes projetados
Compara resultados
Analisa sintomas e Relata incidentes
Acompanhamento
Verifica critério de aceitação
Emite relatórios de acompanhamento
Analisa tendências
Verifica necessidades de novos testes
© CenPRA, 2007
Pag.: 17
Revisão: conceitos básicos sobre teste.
Esforço associado ao teste:
“Dependendo do risco e da
complexidade da aplicação em teste, a
parcela do esforço de desenvolvimento
alocada ao teste varia entre 30% e
50%. O custo do teste na maioria dos
sistemas comerciais varia entre 40% e
50% do custo total de
desenvolvimento.”
Prasad Patwa,
Reengineering Test Management
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 18
9
SIMPROS 2007
Revisão: conceitos básicos sobre teste.
Custo de correção de defeito
por fase de desenvolvimento.
Software Defect Reduction Top 10 List
B. Boehm, V. Basilli
IEEE Computer, Jan/2001
© CenPRA, 2007
Pag.: 19
Revisão: conceitos básicos sobre teste.
“A liberação de um produto de software
é uma decisão de negócio, e não uma
questão de qualidade.”
No more whining
Johanna Rothman
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 20
10
SIMPROS 2007
Revisão: conceitos básicos sobre teste.
Pontos chave:
•Teste é uma atividade cara e repetitiva.
•Exige planejamento, projeto, execução e acompanhamento.
•Um processo de teste bem definido e documentado é
fundamental .
•Quando executado corretamente, teste pode prevenir a
ocorrência de defeitos e economizar recursos.
•Deve haver um alinhamento entre o processo de teste e
os objetivos do negócio.
•Teste não é um substituto para boas práticas de Engenharia
de Software.
© CenPRA, 2007
Pag.: 21
Programa do Workshop
„ Objetivo do Curso
„ Revisão
„ Introdução
„ Técnicas & demos
Captura & executa
„ Scripts estruturados
„ Teste dirigidos por tabelas
„ Teste dirigidos por palavras-chave - Watir
„ Automação & desenvolvimento
„ Conclusão
„
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 22
11
SIMPROS 2007
Introdução: conceitos básicos de automação.
Automação de teste consiste no uso de
ferramentas de software para:
„
„
„
„
controlar a execução dos testes;
comparar os resultados obtidos com os
resultados esperados;
preparar o set-up de pré-condições do teste;
relatar os resultados obtidos
obtidos.
© CenPRA, 2007
Pag.: 23
Introdução: conceitos básicos de automação.
Quais atividades podemos automatizar?
Planejamento
Apanha informações sobre produto;
Define abordagem de teste
Identifica equipe, tarefa, cronograma, ...
Projeto
Projeta requisitos de teste
Detalha abordagem de teste
Define casos de teste (dados de entrada e resultados)
Execução
Executa programa com casos de testes projetados
Compara resultados
Analisa
l
sintomas e Relata
l
incidentes
d
Acompanhamento
Verifica critério de aceitação
Emite relatórios de acompanhamento
Analisa tendências
Verifica necessidades de novos testes
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 24
12
SIMPROS 2007
Introdução: conceitos básicos de automação.
scripts
Dados
Ferramenta
Resultados
esperados
p
scripts
Interface Gráfica
Dados de
teste
Programa
Em
Teste
Resultados
Relatórios
© CenPRA, 2007
Pag.: 25
Introdução: conceitos básicos de automação.
Scripts de teste:
„ Programa
P
ou parte de
d programa empregado
d para
executar um caso de teste específico ou um conjunto
de casos de teste.
„ Scripts simulam ações, alteram valores e verificam
conteúdo dos objetos da interface gráfica.
„ Normalmente as ferramentas de automação
ç
fornecem linguagens orientadas para o domínio de
teste de software.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 26
13
SIMPROS 2007
Introdução: conceitos básicos de automação.
Scripts de teste: exemplos.
Window.Localizar.ProcurarPor.TypeText(“automação”);
Window.Localizar.Diferenciar.Click ();
Window.Localizar.Localizar.Click();
MainWindow.Document.ChechSelText(“automação”);
© CenPRA, 2007
Pag.: 27
Introdução: conceitos básicos de automação.
Limitações de scripts de teste:
„ scripts
i
são d
dependentes
d
d
dos elementos
l
d
da iinterface
f
gráfica:
Se a interface mudar,
o script pára de funcionar.
„ As
A linguagens
li
d
de ttestes
t normalmente
l
t reconhecem
h
somente os elementos básicos da interface gráfica.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 28
14
SIMPROS 2007
Programa do Workshop
„ Objetivo do Curso
„ Revisão
„ Introdução
„ Técnicas & demos
Captura & executa
„ Scripts estruturados
„ Teste dirigidos por tabelas
„ Teste dirigidos por palavras-chave - Watir
„ Automação & desenvolvimento
„ Conclusão
„
© CenPRA, 2007
Pag.: 29
Introdução: conceitos básicos de automação.
Técnicas para desenvolvimento de scripts:
„ Captura
C t
& executa
t
„ Scripts estruturados
„ Dirigidos por tabelas
„ Dirigidos por palavras
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 30
15
SIMPROS 2007
Automação – Conceitos básicos.
I. Captura e executa.
Características:
1.
2.
3.
4.
Usuário usa ferramenta no modo gravação e executa um caso
de teste;
Ferramenta gera automaticamente comandos necessários
para repetir ações do usuário;
Modo de gravação pode ser interrompido para inclusão
manual de comandos de verificação;
Ao final da execução
ç do caso de teste,, o script
p
correspondente está definido.
O script gerado pode ser empregado
para a re-execução do teste.
© CenPRA, 2007
Pag.: 31
Automação – Conceitos básicos.
I. Captura e executa
Vantagens:
„
„
Rapidez para a geração de
scripts;
Facilidade para
aprendizagem da
linguagem.
Limitações:
ç
„ Número elevado de scripts
gerados;
„ Novos testes implicam em
novos scripts.
„ Elevado acoplamento entre
„
„
„
„
© CenPRA, 2007
© CenPRA – 2007.
dados (casos de teste) e código
(script);
Geração de scripts não
estruturados;
Alterações na interface gráfica
impactam fortemente os scripts;
Dificuldades para manutenção
dos scripts.
Algum conhecimento de
programação é necessário.
Pag.: 32
16
SIMPROS 2007
Programa do Workshop
„ Objetivo do Curso
„ Revisão
„ Introdução
„ Técnicas & demos
Captura & executa
„ Scripts estruturados
„ Teste dirigidos por tabelas
„ Teste dirigidos por palavras-chave - Watir
„ Automação & desenvolvimento
„ Conclusão
„
© CenPRA, 2007
Pag.: 33
Automação – Conceitos básicos.
II. Scripts estruturados
Características:
„
„
Desenvolvimento de pequenos scripts de funções genéricas
que podem ser reutilizados.
Scripts podem ser organizados em um framework que
forneça funções básicas de automação.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 34
17
SIMPROS 2007
Automação – Conceitos básicos.
II. Scripts estruturados
Vantagens:
g
Limitações:
ç
„
„ Esforço necessário para
Possibilidade de agrupar
vários casos de teste
similares por script.
Testes similares requerem
menor esforço de
manutenção
„
© CenPRA, 2007
desenvolvimento dos scripts;
„ Tempo necessário para
obter resultados.
„ Elevado acoplamento entre
dados (casos de teste) e
código (script);
„ Conhecimento de
programação
ã necessário;
ái
„ Alterações na interface
gráfica impactam os scripts;
„ Novos casos de teste
implicam na evolução dos
scripts.
Pag.: 35
Programa do Workshop
„ Objetivo do Curso
„ Revisão
„ Introdução
„ Técnicas & demos
Captura & executa
„ Scripts estruturados
„ Teste dirigidos por tabelas
„ Teste dirigidos por palavras-chave - Watir
„ Automação & desenvolvimento
„ Conclusão
„
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 36
18
SIMPROS 2007
Automação – Conceitos básicos.
III. Dirigidos por tabelas
Características:
„
„
„
Os casos de teste são armazenados em tabelas.
Scripts são desenvolvidos para ler a tabela e processar os
casos de teste.
Cada tabela contém dados de um mesmo cenário de teste.
© CenPRA, 2007
Pag.: 37
Automação – Conceitos básicos.
III. Dirigidos por tabelas
Tabela 1:
Cadastro de clientes
S b
Sobrenome
N
Nome
C t Depósito
Conta
D ó it
Silva
José
30.123-A
12.700,00
Moraes
Carlos
40.456-B
Tabela 2:
Transferência
Conta
Conta
30.123-A 40.456-B
Tabela 3:
Verificação de saldo
Conta
30123-A
40456-B
8.200,00
Valor
500,00
Saldo
12200,00
8700,00
Hans Buwalda
Getting automated testing
under control
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 38
19
SIMPROS 2007
Automação – Conceitos básicos.
III. Dirigidos por tabelas:
Vantagens:
„
Suporte oferecido pelas
principais ferramentas;
Mesmo script pode ser
usado sem alteração para
executar novos casos de
teste semelhantes.
Alterações na interface
gráfica impactam pouco os
scripts.
„
„
Limitações:
„ Esforço necessário para
„
„
„
„
© CenPRA, 2007
Pag.: 39
desenvolvimento dos scripts;
Tempo necessário para
obter resultados.
Scripts desenvolvidos são
mais complexos.
Conhecimento em
desenvolvimento de
software é necessário.
Pouco flexível para a
definição de novos cenários
de teste.
Programa do Workshop
„ Objetivo do Curso
„ Revisão
„ Introdução
„ Técnicas & demos
Captura & executa
„ Scripts estruturados
„ Teste dirigidos por tabelas
„ Teste dirigidos por palavras-chave - Watir
„ Automação & desenvolvimento
„ Conclusão
„
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 40
20
SIMPROS 2007
Automação – Conceitos básicos.
IV. Dirigido por palavras-chave:
Características:
„
Os casos de teste são armazenados em tabelas.
„
Scripts são desenvolvidos para ler a tabela e processar os
casos de teste.
„
Cada tabela contém dados de diversos cenários de teste
© CenPRA, 2007
Pag.: 41
Automação – Conceitos básicos.
IV. Dirigido por palavras-chave:
Teste Inicial
Cadastro
Cadastro
Transferência
VerificaSaldo
VerificaSaldo
Silva
Moraes
30.123-A
30 123-A
30.123-A
40.456-B
© CenPRA, 2007
© CenPRA – 2007.
José
30.123-A
Carlos
40.456-B
40.456-B 500,00
12 200 00
12.200,00
8.700,00
12.700,00
8.200,00
Pag.: 42
21
SIMPROS 2007
Automação – Conceitos básicos.
IV. Dirigidos por palavras-chave:
Vantagens:
„
„
„
Flexível para a definição de
novos cenários de teste.
Alterações na interface
gráfica alteram pouco os
scripts.
Testes são definidos em
termos de processos de
negócios.
© CenPRA, 2007
Limitações:
„ Esforço necessário para
desenvolvimento dos scripts;
„ Tempo necessário para
obter resultados.
„ Scripts desenvolvidos são
mais complexos.
„ Conhecimento em
desenvolvimento de
software é necessário.
Pag.: 43
Automação – Watir.
WATIR: Web Application Testing in Ruby.
„ Permite realizar testes de regressão em aplicações
WEB;
„ Usa linguagem Ruby para manipular o navegador IE
(através da interface COM).
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 44
22
SIMPROS 2007
Automação – Watir.
„ Linguagem de programação orientada a objetos
desenvolvida em 1995;
„ Atualmente considerada a 10 a linguagem mais
popular em uso (http://www.tiobe.com/tpci.htm);
„ Foco na simplicidade e produtividade.
© CenPRA, 2007
Pag.: 45
Automação – Watir.
„ Interpretada & flexível:
„ Hashes:
End_URL[‘Fish’] =
'http://www.petshop.com/petshop/Category.aspx?categoryId=FISH‘;
„
Expressões regulares:
Preco = / TOTAL => \d+.\d+ / . match (linhaHtml)
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 46
23
SIMPROS 2007
Automação – Watir.
ie = IE.new
ie goto(‘http://www
ie.goto(
http://www.google.com.br
google com br’))
© CenPRA, 2007
Pag.: 47
Automação – Watir.
Manipulação de hyperlinks:
ie link(:text ”Efetuar
ie.link(:text,
Efetuar login
login”)).click
click
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 48
24
SIMPROS 2007
Automação – Watir.
Campo de entrada de dados:
ie.textField( name, q ).set( watir )
ie.textField(:name,”q”).set(“watir”)
© CenPRA, 2007
Pag.: 49
Automação – Watir.
Buttons:
ie button(:value ”Pesquisa
ie.button(:value,
Pesquisa Google
Google”)).click
click
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 50
25
SIMPROS 2007
Automação – Watir.
Radio buttons:
ie radio(:id ”all”)
ie.radio(:id,
all ).set
set
© CenPRA, 2007
Pag.: 51
Automação – Watir.
Exemplo: aplicativo para venda de animais:
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 52
26
SIMPROS 2007
Automação – Watir.
Exemplo: aplicativo para venda de animais:
Teste: Verificar funcionalidade do carrinho de
compras:
• Inserir animais;
• Retirar animais.
© CenPRA, 2007
Pag.: 53
Automação – Watir.
Exemplo: aplicativo para venda de animais:
Objetivo do teste: verificar funcionalidade do
carrinho de compras.
Exemplo de caso de teste:
„
„
„
„
„
„
Inserir um peixe dourado no carrinho de compras;
Inserir um poodle no carrinho de compras;
Inserir uma serpente no carrinho de compras;
Inserir um gato no carrinho de compras;
Inserir um canário no carrinho de compras;
Verificar o total do carrinho (US$81,50).
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 54
27
SIMPROS 2007
Automação – Watir.
Exemplo: aplicativo para venda de animais:
Ab d
Abordagem
escolhida:
lhid tteste
t di
dirigido
i id por
palavras chaves.
„
InserirNoCarrinho:
Insere um animal no carrinho de compras.
„
RetirarDoCarrinho:
R i um animal
Retira
i ld
do carrinho
i h d
de compras.
„
VerificarPreço:
Verifica o total do carrinho de compras.
© CenPRA, 2007
Pag.: 55
Automação – Watir.
Exemplo: Tabela submetida ao programa de teste:
Palavra chave
Parâmetros
Gold
Gold_male
InserirNoCarrinho Dogs
Poodle
Poodle_male 18,50
InserirNoCarrinho Snake
18,50
InserirNoCarrinho Cats
RattleSnake Venomless
Tailed
Manx
InserirNoCarrinho Birds
Finch
Finch Male
Finch_Male
15,50
InserirNoCarrinho Fish
VerificarPreço
© CenPRA, 2007
© CenPRA – 2007.
5,50
23,50
81,50
Pag.: 56
28
SIMPROS 2007
Automação – Watir.
Exemplo: aplicativo para venda de animais:
„ Os dados da tabela são utilizados diretamente na
automação do teste do software;
„ Novos testes podem ser criados pela inclusão ou
deleção de linhas da tabela, sem a necessidade de
alteração de nenhum script de teste;
„ Alterações na interface gráfica do software em
t t acarretam
teste
t
alterações
lt
õ nos scripts
i t d
de tteste,
t
mas não nos dados de teste.
© CenPRA, 2007
Pag.: 57
Programa do Workshop
„ Objetivo do Curso
„ Revisão
„ Introdução
„ Técnicas & demos
Captura & executa
„ Scripts estruturados
„ Teste dirigidos por tabelas
„ Teste dirigidos por palavras-chave - Watir
„ Automação & desenvolvimento
„ Conclusão
„
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 58
29
SIMPROS 2007
Automação & desenvolvimento.
Automação = desenvolvimento de software!
„
„
„
Boas práticas de engenharia de software;
Equipe: engenheiros de automação e engenheiros de teste;
Retorno não imediato;
Depuração dos scripts;
Manutenção dos scripts.
© CenPRA, 2007
Pag.: 59
Automação & desenvolvimento.
Automação = desenvolvimento de software!
Para que um projeto de automação tenha sucesso ele
deve passar por um ciclo de vida semelhante ao de
um projeto de desenvolvimento de software:
1.
2.
3.
4.
5.
6.
7.
Planejamento
Levantamento de requisitos
Projeto
Codificação
Testes
Operação
Manutenção & evolução
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 60
30
SIMPROS 2007
Automação & desenvolvimento.
Automação = desenvolvimento de software!
Planejamento:
Levantar escopo do projeto (tempo, equipe e recursos)
Identificar envolvidos e expectativas;
Identificar estratégias de teste que serão usadas;
Avaliação do processo de teste.
Levantamento de requisitos:
Identificar necessidades dos envolvidos;
Identificar objetivos do teste;
Identificar cenários de teste.
© CenPRA, 2007
Pag.: 61
Automação & desenvolvimento.
Automação = desenvolvimento de software!
Projeto:
Estruturação dos scripts;
Estruturação dos cenários de teste;
Organização do ambiente de teste;
Definição de padrões.
Codificação:
Desenvolvimento dos scripts;
Desenvolvimento dos cenários de teste;
Desenvolvimento do ambiente de teste.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 62
31
SIMPROS 2007
Automação & desenvolvimento.
Automação = desenvolvimento de software!
Avaliação:
Execução controlada dos scripts;
Avaliação dos resultados obtidos.
Operação:
Execução operacional dos scripts em ambiente de
teste;
Manutenção & evolução:
Acompanhamento da evolução do sistema em teste,
compreendendo:
•desenvolvimento de novos testes;
•desenvolvimento de novos scripts.
© CenPRA, 2007
Pag.: 63
Automação & desenvolvimento.
Automação = desenvolvimento de software!
Características de uma boa solução de automação:
1.
2.
3.
4.
5.
Modularidade;
Manutenabilidade;
Flexibilidade de uso;
Documentação;
Sincronização:
- contexto;
- temporal.
A solução obtida (scripts e testes) deve ficar sobre gerência
de configuração.
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 64
32
SIMPROS 2007
Automação & desenvolvimento.
Esforço necessário para desenvolver scripts:
A experiência mostra que o esforço necessário para
criar, verificar e documentar um teste automático é de
3 a 10 maior do que o necessário para criar e executar
o teste manualmente.
© CenPRA, 2007
Pag.: 65
Programa do Workshop
„
„
„
„
Objetivo do Curso
Revisão
Introdução
Técnicas & demos
„ Captura & executa
„ Scripts estruturados
„ Teste dirigidos por tabelas
„ Teste dirigidos por palavras-chave - Watir
„ Automação & desenvolvimento
„ Conclusão
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 66
33
SIMPROS 2007
Automação – Conclusões.
Custos associados à automação:
„ Custos de aquisição da tecnologia:
„
„
„
Recursos necessários à escolha da ferramenta
Recursos necessários à compra e instalação da
ferramenta;
Recursos necessários ao treinamento
„ Custos de uso da tecnologia:
„ Recursos
R
necessários
á i à automação (d
(desenvolvimento
l i
de scripts)
„ Recursos necessários à manutenção dos scripts
© CenPRA, 2007
Pag.: 67
Automação – Conclusões.
Um exemplo: Sistema da área de seguros.
„
„
„
„
„
Esforço
Esf
rç n
necessário
c ssári à execução
x cuçã dos
d s testes
t st s manuais:
m nu is:
5 p.m (5 pessoas X 4 semanas )
Esforço necessário à automação dos testes (uma única vez):
18 p.m ( 3 pessoas X 6 meses)
Tempo necessário à execução automatizada dos mesmos testes:
uma semana (1,25 p.m)
Número de ciclos de teste necessários para recuperar investimento:
Cinco
Diferença foi reinvestida no aprimoramento dos testes.
Resultado:
„ número de incidentes em sistemas em produção caiu de 80% a 90%.
„ A economia para empresa ao término de um ano foi superior ao orçamento
anual do departamento de teste.
LindaHayes
Does test automation
save time and money?
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 68
34
SIMPROS 2007
Automação – Conclusões.
„ Não pense em automação como um mecanismo para diminuir o prazo
da realização dos testes, mas como uma forma de aproveitar melhor
o tempo
t
para obter
bt um produto
d t mais
is confiável.
fiá l
„ O grande benefício não vem da repetição automática dos testes,
mas pela execução de teste que não foram executados
anteriormente.
„ O benefício obtido pela automação ficam comprometidos se os
testes não forem p
projetados
j
de forma a serem facilmente
modificados quando o aplicativo for alterado.
© CenPRA, 2007
Pag.: 69
Automação – conclusões.
Pontos chave:
•Expectativas gerenciais realísticas;
•Automação = desenvolvimento de software;
•Use técnicas orientadas por dados;
•Considere impactos na equipe de teste;
•Não planeja automatizar todos os testes;
•Use tempo ganho com automação para aprimorar testes;
•Combine testes automáticos e manuais;
•Testes automáticos necessitam de um bom processo de teste;
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 70
35
SIMPROS 2007
Referências.
„ Sites com informações sobre
ferramentas:
„
„
„
© CenPRA, 2007
http://www.aptest.com/resources.html
http://www.io.com/~wazmo/qa/
http://www.softwareqatest.com/
Pag.: 71
Referências.
„ Algumas (poucas) ferramentas ...
„
„
„
„
„
„
„
„
Borland / Segue - SilkTest
HP / Mercury - WinRunner
Compuware - QACenter
IBM / Rational - Robot
AutomatedQA – TestComplete
ApTest – Ap Test Manager
Empirix – e-Tester
LogiGear - TestArchitect
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 72
36
SIMPROS 2007
Referências.
„ Automated Software Testing, Elfriede Dustin, Jeff Rashka, John Paul.
Addison Wesley, 1999.
„ Software Test Automation, Mark Fewster, Dorothy Graham. Addison
Wesley, 2000.
„ Load Testing for eConfidence, Stefan Asbock, Segue Software, 2000.
„ Automated Testing Handbook, Linda G. Hayes, 2004.
„ Lessons Learned in Software Testing, Cem Kaner, James Bach, Bret
Pettichord Wiley Computer Publishing
Pettichord,
Publishing, 2002 (capítulo 5 – Automated
Testing).
„ Effective Software Testing, Elfriede Dustin, Addison-Wesley, 2003
(Capítulos 7 – Automated Testing Tools, e 8 – Automated Testing)
© CenPRA, 2007
Pag.: 73
Referências.
„ Software Testing – Testing Across the Entire Software
Development Life Cycle, Gerald D. Everret, Raymond McLeod Jr,
Wiley-Interscience, 2007 (Capítulos 9 – Performance Testing, e 11 –
Automated Testing Tools)
„ Fit for Developing Software: Framework for Integrated Tests,
Rick Mugridge, Ward Cunningham , Prentice Hall, 2005.
„ Everyday Scripting with Ruby – For Teams, Testers, and You, Brian
Marick, The Pragmatic Programmers, 2006
„ Testing Applications on the Web, Hung Q. Nguyen, Bob Johnson,
Michael Hackett, Wiley Publishing, Inc., 2003 (capítulo 19 –
Performance Testing)
© CenPRA, 2007
© CenPRA – 2007.
Pag.: 74
37
SIMPROS 2007
FIM
© CenPRA, 2007
Pag.: 75
Centro de Pesquisas Renato Archer - CenPRA
Divisão de Melhoria de Processos de Software - DMPS
Contatos
Miguel Argollo
[email protected]
telefone: (19) 3746
3746--6099
CenPRA
76
Tecnologia da Informação
© CenPRA – 2007.
38

Documentos relacionados