introducao a automação de testes de softwares

36
eINTELLECTA 11 3257 3003 www.intellecta.com.br

Upload: intellecta

Post on 07-Jun-2015

1.976 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Introducao a automação de testes de softwares

eINTELLECTA

11 3257 3003

www.intellecta.com.br

Page 2: Introducao a automação de testes de softwares

Introdução a Automação de Testes de Software

Eduardo Souza

Page 3: Introducao a automação de testes de softwares

Experiências

eINTELLECTA

11 3257 3003

Page 4: Introducao a automação de testes de softwares

Conteúdo

eINTELLECTA

11 3257 3003

- Introdução

- Objetivos da Automação

- Quando Automatizar?

- O que Automatizar?

- O que não Automatizar?

- Lista de Ferramentas

- Tipos de Testes

- Aderência das Ferramentas

- Técnicas de Automação

- Boas Práticas da Automação

- Desafios da Automação

Page 5: Introducao a automação de testes de softwares

“Automação de teste é o uso de software para controlar a execução do

teste de software, a comparação dos resultados esperados com os

resultados reais, a configuração das pré-condições de teste e outras

funções de controle e relatório de teste. De forma geral, a

automação de teste pode ser começada a partir de um processo manual

de teste já estabelecido e formalizado.”

Fonte: Wikipédia

http://totvs.vc/1OrP

Introdução

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 6: Introducao a automação de testes de softwares

“Automação de teste é o uso de software para controlar a execução do

teste de software, a comparação dos resultados esperados com os

resultados reais, a configuração das pré-condições de teste e outras

funções de controle e relatório de teste. De forma geral, a

automação de teste pode ser começada a partir de um processo manual

de teste já estabelecido e formalizado.”

Fonte: Wikipédia

http://totvs.vc/1OrP

Automação de testes é testar um software com outro software!

Introdução

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 7: Introducao a automação de testes de softwares

� Aumentar a consistência e abrangência;

� Reduzir o tempo ou esforço de teste;

� Diminuir o custo;

� Aumentar a produtividade do desenvolvimento de

software como um todo;

� Aumentar a qualidade do produto final.

Objetivos da Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 8: Introducao a automação de testes de softwares

� Aplicação estável;

� Constantes execuções de teste;

� Aplicação sem expectativa de grandes alterações em seus

fluxos e “objetos”;

� Caso de Testes com grande variação de massa.

Quando Automatizar?

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 9: Introducao a automação de testes de softwares

� Testes de regressão;

� Smoke tests;

� Tarefas repetitivas;

� Cálculos matemáticos;

� Funcionalidades críticas.

O que Automatizar?

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 10: Introducao a automação de testes de softwares

� Funcionalidades pouco usadas;

� Funcionalidades que exigem inspeção visual;

� Protótipos;

� Funcionalidades novas.

O que não Automatizar?

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 11: Introducao a automação de testes de softwares

Lista de Ferramentas

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Testes Funcionais

Selenium Functional Tester

soapUI Robot

BadBoy Quick Test Pro

Testes de Performance

JMeter Performance Tester

Load Runner

Testes Unitarios

JUnit

TestNG

NUnit

Testes de Segurança

AppScan

Acunetix

Page 12: Introducao a automação de testes de softwares

Lista de Ferramentas

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Metrics

http://metrics.sourceforge.net/

Page 13: Introducao a automação de testes de softwares

Lista de Ferramentas

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

JUnit

http://www.junit.org/

Page 14: Introducao a automação de testes de softwares

Lista de Ferramentas

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

EclEmma

http://www.eclemma.org/

Page 15: Introducao a automação de testes de softwares

Lista de Ferramentas

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

MuClipse

http://muclipse.sourceforge.net/

Page 16: Introducao a automação de testes de softwares

Lista de Ferramentas

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

MuClipse

http://muclipse.sourceforge.net/

Page 17: Introducao a automação de testes de softwares

Testes Funcionais – Automatizados com Selenium

Tipos de Testes

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 18: Introducao a automação de testes de softwares

Testes Unitários – Automatizados com JUnit

Tipos de Testes

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 19: Introducao a automação de testes de softwares

Testes Funcionais – Automatizados com com JMeter

Tipos de Testes

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 20: Introducao a automação de testes de softwares

Testes de Desempenho – Automatizados com com JMeter

Tipos de Testes

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 21: Introducao a automação de testes de softwares

Teste de Segurança – Automatizados com Acunetix

Tipos de Testes

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 22: Introducao a automação de testes de softwares

Teste de Segurança – Automatizados com Acunetix

Tipos de Testes

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 23: Introducao a automação de testes de softwares

Servidor de Integração Contínua

Tipos de Testes

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 24: Introducao a automação de testes de softwares

Verificar se a ferramenta de teste é apropriada para testar o software

Aderência das Ferramentas

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 25: Introducao a automação de testes de softwares

� KDT (Keyword-driven testing)

� DDT (Data-driven testing)

� DSL (Domain Specific language)

� Record & Playback;

� Negar validadores

Técnicas de Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

“Um tolo com uma ferramenta

ainda é um tolo”Autor: Elias Nogueira

Page 26: Introducao a automação de testes de softwares

Keyword-driven testing

Técnicas de Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 27: Introducao a automação de testes de softwares

Data-driven testing

Técnicas de Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 28: Introducao a automação de testes de softwares

Domain Specific language

Técnicas de Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 29: Introducao a automação de testes de softwares

Negar validadores

Técnicas de Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 30: Introducao a automação de testes de softwares

1. Definir padronização1. Diretório comum entre o time2. Nomenclatura dos scripts (lvs_cpp_01.java)3. Exclusão de componentes específicos4. …

2. Executar e salvar sempre que alterar o script1. Gravar

ExecutarSalvar

2. Inserir validadoresExecutarSalvar

3. ParametrizarExecutarSalvar

4. CorrelacionarExecutarSalvar

5. ModularizarExecutarSalvar

6. …

3. Backup diário dos scripts

4. …

Boas Práticas da Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 31: Introducao a automação de testes de softwares

� Arquitetura do teste;

� Ambiente de teste;

� Custo da automação e manutenção dos testes;

� Captação de profissionais qualificados;

� Concorrência ou execução assíncrona.

Desafios da Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 32: Introducao a automação de testes de softwares

1. Bug na ferramenta de teste;

Armazenar resultados no JMeter

JVM do Functional Tester

2. 120% de consumo do disco (Swap);

3. Servidor com 8GB em OS de 32 Bits que só administra 4GB;

4. Servidor indisponível para monitoração;

5. Lentidão na rede onde ocorre os testes de carga;

6. Sobrecarga no System (Troca de contexto);

7. Diferença de idioma entre OS master e slave (60%);

9. Ferramenta de teste posicional;

10. Erros funcionais em testes de performance;

11. Consumo de memória por usuário virtual;

12. Testes unitários em Web Service;

13. Fragilidade com testes de interface;

Desafios da Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 33: Introducao a automação de testes de softwares

Testar software não é fácil!

Desafios da Automação

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 34: Introducao a automação de testes de softwares

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Dúvidas?

Page 35: Introducao a automação de testes de softwares

Eduardo Freitas de Souza

www.qualidadedesoftware.com.br

Duvidas: [email protected]

Palestrante

eINTELLECTA

11 3257 3003

http://www.intellecta.com.br/cursos

Page 36: Introducao a automação de testes de softwares

eINTELLECTA

11 3257 3003

www.intellecta.com.br