Automação de Teste - BRATESTE 2010

35
www.qualister.com.br (48) 4052-9536 / 9540 [email protected] Automação de Teste de Software BRATESTE 2010 Terceirização de profissionais Consultoria de teste Avaliação de usabilidade Automação de testes Testes de performance Treinamentos

description

Apresentação sobre Automação de Teste de Software no 3° BRATESTE - Seminário Brasileiro de Teste de Software em 18/06/2010 Esta apresentação contém material teórico sobre Automação de Teste, Geração de Frameworks de Automação de Teste, como definir a arquitetura da automação e um hands on com Selenium

Transcript of Automação de Teste - BRATESTE 2010

Page 1: Automação de Teste - BRATESTE 2010

www.qualister.com.br

(48) 4052-9536 / 9540

[email protected]

Automação de Teste de Software

BRATESTE 2010

• Terceirização de profissionais

• Consultoria de teste

• Avaliação de usabilidade

• Automação de testes

• Testes de performance

• Treinamentos

Page 2: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Sobre a Qualister

• Fundação : 2007.• Sobre a Qualister : A Qualister é uma empresa nacional, constituída a partir da união

de profissionais qualificados e certificados na área de testes e qualidade de software, com o objetivo de integrar, implementar e implantar soluções com base nas melhores práticas do mercado e normas internacionais.

• Colaboradores : A Qualister é composta por colaboradores pós-graduados e certificados na área de testes (CBTS, CSTE) com larga experiência na indústria de Tecnologia da Informação.

• Área de atuação : A Qualister é uma empresa especializada em serviços de qualidade e teste de software. Tem como linhas de atuação consultoria em teste/qualidade de software, outsourcing (terceirização dos serviços através da alocação de profissionais) e treinamentos.

• Localização : A Qualister está localizada em Biguaçu na Grande Florianópolis/SC e está instalada no CITEB – Centro de Inovação Tecnologia de Biguaçu no campus da universidade UNIVALI.

Page 3: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Alguns clientes

Page 4: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Parcerias internacionais

Soluções para automação, profilling e gestão de testes

Soluções para testes de performance

Soluções de apoio a avaliação de usabilidade

Page 5: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Contato

• Email : [email protected]• Telefone : (48) 4052-9540 e (48) 4052-9536• Endereço : Rua Patrício Antônio Teixeira, 317, Sala 406-A,

Jardim Carandaí. Biguaçu/SC. CEP 88160-000

Page 6: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Instrutor

• Elias Nogueira– Consultor e Instrutor de Automação de Teste na Qualister– Arquiteto de Teste de Software na InMetrics– Instrutor de Teste de SW na Iterasys Informática– MBA Teste de Software– CSTE – Certified software Testes / QAI Brasil– Blog: http://sembugs.blogspot.com

Page 7: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Agenda

• Conceituação de Automação de Teste Funcional– O que é Automação Funcional de Teste– Desafio do Teste Manual– Falsa expectativa– Ferramentas não são infalíveis– Testes Manuais x Automação de Teste– Quem automatiza e seus papéis

• Definição de Criação e Execução de Testes Automatizados– Escopo da Automação– Gerações de Frameworks Automatizados (Framework Generations)– Passos para o Design da Automação Funcional– Tipos de Defeitos e Implementação de Manipulação de Erros

• Ferramentas para a Automação Funcionais de Teste– Ferramentas free e open source– Ferramentas pagas

Page 8: Automação de Teste - BRATESTE 2010

www.qualister.com.br

O que é Automação Funcional de Teste?

Desafio do Teste Manual

Page 9: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Desafio do Teste Manual

Falsas Expectativas

Page 10: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Falsa Expectativa

Uma ferramenta de

testes

automatizados é a

solução de todos os

problemas de

qualidade.

Testabili-oquê?

Você quer dizer que

para criar testes

automatizados será

necessário modificar o

sistema?

Testes

automatizados é

moleza. Basta

gravar a digitação e

os cliques do mouse

e depois executar o

script.

Falsas Expectativas

Page 11: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Falsa Expectativa

• Testes automatizados revelam apenas cerca de 15% dos defeitos enquanto testes manuais revelam cerca de 85% dos defeitos (James Bach, 1997)

Analogia adaptada de Brian Marick/James BachFerramentas não são infalíveis

Page 12: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Ferramentas Não São Infalíveis

• Podem trazer problemas na execução• Podem trazer resultados errados• Não tem imaginação• Reconhecimento incorreto de componentes/objetos

Teste Manual x Automação de Teste

Page 13: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Testes Manuais x Automação de Teste

Quem automatiza e seus papéis

Page 14: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Quem Automatiza e Seus Papéis

• Automatizador de Teste

• Engenheiro de Teste

• Arquiteto de Teste

Quem automatiza e seus papéis

Page 15: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Quem Automatiza e Seus Papéis

• O que o profissional precisa conhecer?– Linguagem de programação

– Sistemas Operacionais

– Conhecimento avançado das Técnicas de Teste

– Ferramentas de Automação

– Linguagem SQL

– Arquitetura de Software

– Configuração de Ambientes

– Execução de Testes não Funcionais

– Habilidade de comunicação com pessoas técnicas

Escopo da Automação

Page 16: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Escopo da Automação

• Como definir uma ferramenta de automação?– Levantar todas as expectativas e benefício esperados

pela área de teste

– Criar um documento de comparação (benchmark)

– Listar pontos específicos da ferramenta para a comparação (funcionalidades, benefícios, etc...)

– Decisão será por uma reunião com os stakeholders

– O termo aquisição pode ser diferente de gastar com ferramentas

Automação dentro da organização

Page 17: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Escopo da Automação

• Automação dentro da organização– Revisar o atual Processo de Teste

– Aplicar todos os testes internos com a ferramenta sob o processo

– Efetuar as Melhorias no Processo de Teste

– Obter resultados reais da utilização de ferramentas

– Real comparação da execução manual x apoio de ferramentas

– Todas as percepções devem ser coletadas e posteriormente analisadas

Planejamento arquitetura e design

Page 18: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Escopo da Automação

• Planejamento, Arquitetura e Desenvolvimento– Identificação/criação de normas e diretrizes

– Validar o ambiente (HW e SW)

– Gerar Massa de Dados

– Criar os scripts (gravar, atualizar e testar)

– Executar os scripts

– Gerar métricas de execução dos scripts

– Scripts devem ser:

• Reutilizáveis

• Plugáveis

Execução e revisão da automação

Page 19: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Escopo da Automação

• Execução dos Testes Automatizados

– Mesma abordagem da execução manual

– Duas abordagens para os testes automatizados

• Testes focados no componente

• Testes focados na integração funcional dos componentes

• Revisão dos Testes Automatizados

– Revisar documentação gerada

– Revisar métricas coletadas

– Coletar feedbacks

– Melhorar o Processo de Teste

1° Geração de frameworks

Page 20: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Gerações de Frameworks

• 1°Geração de Frameworks: Linear– Utilização de um script “reto”

– Impulsionados pelo uso do Record-and-Play

– Sem modularização, reutilização e atributos de qualidade para scripts

• Pode ser útil para automações pontuais

2° Geração: Decomposição funcional

Page 21: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Gerações de Frameworks

• 2°Geração de Frameworks: Decomposição Funcional– Produção de componentes modularizados– Combinação de componentes existentes– Maior reutilização

1 NavegarPara(“TelaDeBusca”)

2 ColocarInformacao(“BRATESTE 2010”)

3 VerificarInformacao(“BRATESTE 2010”)

Script

• NavegarPara• NavegarPara

Script

• ColocarInformacao• ColocarInformacao

Script

• VerificarInformacao• VerificarInformacao

2 Geração: Data driven

Page 22: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Gerações de Frameworks

• 2°Geração de Frameworks: Data Driven– Mesmo bloco de código usando dados diferentes– Dados ficam em um arquivo externo– Apesar de forte ligação com scripts lineares, é

necessário aplicar a decomposição

1 Acessar a página de login

2 Informar o usuário “José”

3 Informar a senha “1q2w3e”

4 Clicar no botão OK

5 Se usuario e senha OK = Sucesso

6 Senão = Falha

Script linear

2° Geração: Data driven

Page 23: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Gerações de Frameworks

• 2°Geração de Frameworks: Data Driven– Mesmo bloco de código usando dados diferentes– Dados ficam em um arquivo externo– Apesar de forte ligação com scripts lineares, é

necessário aplicar a decomposição

usuario senha

José 1q2w3e

Maria ad5e6p

Massa de Dados1 Pegar dados da Tabela

2 Acessar a página de login

3 Informar o usuário <usuario>

4 Informar a senha <senha>

5 Clicar no botão OK

6 Se usuario e senha OK = Sucesso

7 Senão = Falha

8 Fechar Tabela

2° Geração: Keyword driven

Page 24: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Gerações de Frameworks

• 3°Geração de Frameworks: Keyword Driven– Conhecido também como Table Driven– Testes automatizados desenvolvidos em tabelas com o

vocabulário de palavras-chave (keyword) que são independentes de uma ferramenta

Tela Objeto Ação Valor

TelaDeLogin usuario digitar “Elias”

TelaDeLogin senha digitar “1h5ks80”

TelaDeLogin botao clicar

TelaInicial Validar texto “Bem-vindo Elias”

3° Geração: Model based

Page 25: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Gerações de Frameworks

• 3°Geração de Frameworks: Model Based– Criação e execução de testes automaticamente– Automatizador descreve características do aplicativo

através de modelos com base em ações e resultados esperados

Requisitos Requisitos

de Teste

Modelo

Abstratas

Suítes

Abstratas

Compilação

de Suítes

Derivação

de Teste

Executáveis

Suítes

Executáveis

Execução

de TesteResultados

Informação Informação

Extra

Passos para o design

Page 26: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Passos para o Design da Automação

• Nenhum processo de design será igual• Algumas boas práticas para o design:

– Selecionar o tipo de framework

– Identificar os componentes do framework

– Criar e implementar políticas, padrões e procedimentos

– Desenvolver a Arquitetura

– Desenvolver os Testes Automatizados

– Analisar os resultados

– Relatórios e report de bugs

Passos para o design

Page 27: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Passos para o Design da Automação

• Desenvolver os Testes Automatizados– Gravar os scripts (Record and Play)

– Atualizar os scripts (criar loops e validações)

– Criar mecanismos de Manipulação de Erros

– Parametrizar os scripts (Data Driven)

– Gerar resultado dos scripts

– Testar os scripts

Tipos de defeitos

Page 28: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Tipos de Defeitos e Implementação de Manipulação de Erros

• Basicamente existem 4 tipos básicos de Defeitos– Erros de Sintaxe– Erros em Tempo de Execução– Erros de Lógica– Erros da Aplicação

• Para corrigir estes defeitos utilizamos Debugging– Identificar a existência do erro– Reproduzir o erro– Localizar o erro– Corrigir o erro

Tipos de defeitos

Page 29: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Tipos de Defeitos e Implementação de Manipulação de Erros

• O tratamento do erro deve incluir os seguintes passos:– Diagnóstico dos erros em potencial

– Definir mecanismo de captura

– Criar log do erro

– Criar a rotina de manipulação de erro

Ferramentas free e open source

Page 30: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Ferramentas Free e OpenSource

• Prós– Ganhando mercado pela facilidade de utilização

– Facilidade de instalação

– Sem custos diretos

– Ferramentas colaborativas

• Contras– Falta de integração entre ferramentas relacionadas

– Funcionalidades não tão bem desenvolvidas

– Gastos com tempo de aprendizado e treinamento

Ferramentas free e open source

Page 31: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Ferramentas Free e OpenSource

• Principais Players

Selenium – Testes Automatizados para Web por meios

Funcionais e de Aceitação.

http://seleniumhq.org

JMeter – Testes de performance em aplicações de diferentes

tipo de servidores (HTTP/HTTPS, SOAP, JMS, etc..).

http://jakarta.apache.org/jmeter

Watir – Testes Automatizados para Web escritos na linguagem

Ruby. Existem derivações em .Net (WatN) e Java (WatJ)

http://watir.com

FitNesse – Web server, Wiki e ferramenta de Teste

Automatizado para suportar Testes de Aceitação

http://jakarta.apache.org/jmeter/

Ferramentas pagas

Page 32: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Ferramentas Pagas

• Principais PlayersTestComplete – Testes Automatizados para Web e Desktop

(Delphi, C++, VB, PowerBuilder) em diversos níveis de teste.

http://peqno.com/testcomplete

HP QuickTest Professional – Testes Automatizados em Web e

Desktop com suporte a diversas tecnologias.

http://peqno.com/qtp

IBM Rational Functional Tester – Testes Automatizados para

Desktop (.Net e Java) e Web .

http://peqno.com/rrobot

HP LoadRunner – Testes de Performance em diversos tipos

de aplicações e protocolos (WEB, SOA, Java, .Net, Citrix, etc...)

http://peqno.com/lrunner

Ferramentas pagas

Page 33: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Ferramentas Pagas

Gartner RAS Core Research Note G00169077, Thomas E. Murphy, 31 July 2009

Page 34: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Hands-On Selenium

• Automação Web através do– Selenium IDE

– Selenium RC (Java + JUnit)

– Data-Driven

Page 35: Automação de Teste - BRATESTE 2010

www.qualister.com.br

Dúvidas

• Dúvidas?

• Email : [email protected]• Telefone : (48) 4052-9540 e (48) 4052-9536• Endereço : Rua Patrício Antônio Teixeira, 317, Sala 406-A,

Jardim Carandaí. Biguaçu/SC. CEP 88160-000