automatização de testes funcionais em dispositivos móveis utilizando a técnica bdd - sast 2014

23

Upload: rafael-chiavegatto

Post on 18-Dec-2014

175 views

Category:

Technology


5 download

DESCRIPTION

Apresentação do artigo Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD no CBSOFT no workshop SAST 2014.

TRANSCRIPT

Page 1: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014
Page 2: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Automatização de Testes Funcionais em

Dispositivos Móveis

utilizando a técnica BDD

Rafael Chiavegatto, Lidiane Silva, Maryane

Pinheiro, Auri Marcelo Rizzo Vincenzi

Page 3: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Agenda

• FPF Tech

• Introdução

• Problemática

• Behaviour Driven Development (BDD)

• Estudo de Caso: Utilização de BDD com frameworks

para automatização de testes

• Resultados obtidos

• Conclusão

• Referências

Page 4: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

UM POUCO SOBRE A

FPF Tech

Page 5: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Instituto de P&D localizado em

Manaus (hardware e software)

Page 6: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Treinamentos Constantes

Page 7: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Ambiente Descontraído

Page 8: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Que sempre busca incentivar a

criatividade e melhoria contínua

de nossos processos

Page 9: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Introdução

• Empresas que desenvolvem software vêm buscando a

garantia da qualidade dos sistemas;

• Agilidade no desenvolvimento de software;

• Estudos sobre técnicas e metodologias para melhoria no

processo de desenvolvimento;

Page 10: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Behaviour Driven Development (BDD)

• Técnica ágil para desenvolvimento de software que

estimula a colaboração entre os participantes de um

projeto;

• Focada em comportamento;

• Utiliza linguagem natural e unificada;

• Gera código a partir de descrição textual.

Page 11: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Problemática

• O sistema deve ser executado em vários dispositivos;

• Alto custo no tempo de execução dos testes de

regressão de forma manual;

• Documentação ambígua;

• Especificações em nível técnico;

• Falha na comunicação entre os envolvidos no projeto.

Page 12: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Dispositivos a serem testados

Tipo Marca Dispositivo Modelo Resolução Versão

OS

Sm

art

ph

on

e

LG Optimus L3 E400 240x320 Android

2.3

LG Optimus Hub E510 320x480 Android

2.3

LG Optimus GT540 320x480 Android

2.3

LG LG GW620 GW620 320x480 Android

2.3

LG Victor E730 480x800 Android

2.3

LG Optimus 3D

Max P720 480x800

Android

2.3

LG Prada 3.0 P940 480x800 Android

2.3

LG Optimus L7 P705 480x800 Android

ICS

Motorola Defy Mini XT320 320x480 Android

2.3

Motorola Fire XT XT531 320x480 Android

2.3

Motorola Motorola

Primus Primus 480x800

Android

2.3

Motorola Razr XT910 540x960 Android

2.3

Motorola Jorian XT 605 640x480 Android

2.3

Tipo Marca Dispositivo Modelo Resolução Versão

OS

Sm

art

ph

on

e

Samsung Galaxy Y Pro GT-B5510 240x320 Android 2.3

Samsung Galaxy Y GT-S5360 240x320 Android 2.3

Samsung Galaxy Y Duos GT-

S6102B 240x320 Android 2.3

Samsung Galaxy Ace GT-S5830 320x480 Android 2.3

Samsung Galaxy S III SGH-i747 720x1280 Android

ICS

Samsung Galaxy Note GT-N7000 800x1280 Android 2.3

Sony

Ericsson Live Walkman WT19 320x480 Android 2.3

Sony

Ericsson Xperia U ST25 480x854 Android 2.3

Sony

Ericsson Xperia

S/Nozomi LT26 720x1280 Android 2.3

Ta

ble

t

Samsung Galaxy Tab 2 P3100 600x1024 Android

4.1.2

Motorola Xoom MZ604 800x1280 Android

4.1.2

24 dispositivos

Page 13: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Estudo de Caso: Aplicação utilizada

Page 14: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Estudo de Caso: Ferramentas utilizadas

Page 15: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Estudo de Caso: Processo utilizado para aplicação do BDD

Page 16: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Estudo de Caso: Especificação de cenário de BDD (feature)

utilizando framework Cucumber-JVM

Page 17: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Estudo de Caso: Mapeamento e implementação dos métodos

das features, utilizando framework Selenium WebDriver

Page 18: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Estudo de Caso: Execução dos testes automatizados

Page 19: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Resultados obtidos

Após a realização desse estudo, foi possível visualizar os seguintes

benefícios:

Tabela B. Resultado da execução Manual dos cenários de teste

Quantidade de

dispositivos

Quantidade de

cenários de

teste

Tempo de

execução por

dispositivo

Tempo médio de

execução por

caso de teste

Quantidade de casos

de cenários de teste

total

Tempo de

execução

Total (h)

24 18 ~5 minutos ~17 segundos 432 ~2 horas

Quantidade de

dispositivos

Quantidade de

cenários de

teste

Tempo de

execução por

dispositivo

Tempo médio de

execução por

caso de teste

Quantidade de casos

de cenários de teste

total

Tempo de

execução

Total (h)

24 18 2 horas ~6,67 minutos 432 48 horas

Tabela C. Resultado da execução Automatizada dos cenários de teste

Uma redução no tempo em torno de 95,8%.

Page 20: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Conclusão

• Redução significativa no esforço e tempo na execução dos

testes;

• Esforço concentrado em cenários mais elaborados;

• Facilidade para execução de testes de regressão;

• Maior compreensão dos cenários especificados (linguagem

natural);

• Melhora na contribuição entre os envolvidos no projeto;

• Facilidade na manutenção dos cenários e scripts de teste

(Cenários associados ao código dos scripts).

Page 21: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Referências

• APACHE Maven Project. Disponível em: <http://maven.apache.org>. Acessado em 24.04.2014.

• BITTENCOURT, Robson. Análise de código utilizando SonarQube. Disponível em: <http://umovme.cc/2013/09/02/analise-de-codigo-

utilizando-sonarqube/>. Acessado em 25.06.2014.

• CAETANO, Cristiano. Artigo Blog Qualister. Testes Exploratórios (Parte 1): Introdução, 2014. Disponível em:

<http://www.qualister.com.br/blog/testes-exploratorios-parte-1-introducao> Acessado em 23.04.2014.

• DELAMARO, M., E., Maldonado, j., C. e Jino, M. Introdução ao Teste de Software. Editora: Elsevier, Campus, 2007.

• EXAME. Android está em cerca de 80% de smartphones vendidos em 2013, 2014. Página Web. Disponível em:

<http://exame.abril.com.br/tecnologia/noticias/android-esta-em-cerca-de-80-de-smartphones-vendidos-em-2013> Acessado em

24.04.2014.

• HUNT, A., Thomas, D. Pragmatic Unit Testing in Java with JUnit. The Pragmatic Programmers v.2, 2003. Disponível em: <

http://books.google.com.br/books/about/The_Pragmatic_Programmer.html?id=5wBQEp6ruIAC&redir_esc=y> Acessado em

20.04.2014.

• KNOTT, D. The magazine for Agile Developers and Agile Testers, Agile Record – Free Digital Version; 7a. edição, 2011.

• MOLINARI, L. Inovação e Automação de Testes de Software. 1ª Edição. São Paulo-SP, 2010.

• North, D. Introducing BDD Better software magazine, 2006. Disponível em: <http://dannorth.net/2006/03/19/bdd-article-published-in-

better-software-magazine/> Acessado em 23.04.2014.

• REDA, R. e Josefson, H. Robotium – Easy Black-box Testing for Android, 2013. Disponível em: <http://swdc-

central.com/androidonly/dl/ao2010-hugo-josefson.pdf> Acessado em 23.04.2014.

• SOMMERVILLE, Ian. Engenharia de Software. 8a Ed. São Paulo: Pearson Addison Wesley, 2007.

• WYNNE, M., Hellesoy, A. The Cucumber Book: Behaviour-Driven Development for Testers and Developers. Editora: The Pragmatic

Programmers, 2012.

Page 22: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014

Contatos

E-mails:

[email protected]

[email protected]

Slideshare

http://pt.slideshare.net/rafaelchiavegatto1

Linkedin

https://www.linkedin.com/pub/rafael-chiavegatto/26/993/3a5

GitHub

https://github.com/chiavegatto

Page 23: Automatização de testes funcionais em dispositivos móveis utilizando a técnica BDD - sast 2014