Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Functional testing with Geb
Search
Isidro López
December 04, 2015
Programming
0
110
Functional testing with Geb
Isidro López
December 04, 2015
Tweet
Share
More Decks by Isidro López
See All by Isidro López
Thinking about value
islomar
1
90
Valor por encima de código: el poder del Despliegue Continuo
islomar
1
210
Pusheando en master, que es gerundio
islomar
2
230
Refactoring legacy code using Approval testing (Meetup Alicante)
islomar
3
150
Aventuras y desventuras de un mindundi en Spotify
islomar
3
1.6k
Mutation testing 101
islomar
3
170
Agile (mucho) más allá de Scrum
islomar
1
180
TCR workshop
islomar
1
530
Refactoring legacy code using Approval testing
islomar
0
48
Other Decks in Programming
See All in Programming
PRレビューのお供にDanger
stoticdev
1
240
CSS Linter による Baseline サポートの仕組み
ryo_manba
1
160
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
9
2.5k
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
390
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1.1k
Introduction to kotlinx.rpc
arawn
0
770
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.6k
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
500
複数のAWSアカウントから横断で 利用する Lambda Authorizer の作り方
tc3jp
0
120
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
270
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
630
Better Code Design in PHP
afilina
0
180
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Site-Speed That Sticks
csswizardry
4
410
Side Projects
sachag
452
42k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
For a Future-Friendly Web
brad_frost
176
9.6k
Gamification - CAS2011
davidbonilla
80
5.2k
Typedesign – Prime Four
hannesfritz
41
2.5k
Facilitating Awesome Meetings
lara
53
6.2k
A Philosophy of Restraint
colly
203
16k
Docker and Python
trallard
44
3.3k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Transcript
Tests funcionales con Geb
Índice 1. Características de Geb 2. Alternativas 3. Uso en
otras empresas 4. Debate sobre tests funcionales
Test pyramid
Qué es Geb • Browser automation solution • Integrable con
JUnit, TestNG, Cucumber, Spock… • Build system integration: Gradle, Grails, Maven
Qué es Geb Geb se apoya en: • WebDriver cross-browser
automation • jQuery content selection • Page Object modelling • Groovy DSL
Selenium WebDriver Browser automation framework Sucesor de Selenium Remote Control
Funciona tanto en navegador real como headless (e.g. PhantomJS)
Selenium WebDriver • Cross-browser: ◦ FF, IE, Chrome, Opera. ◦
Experimental: ▪ Chrome on Android, ▪ Safari on iPhone/iPad • Remote browsers (e.g. run IE from *NIX) • Headless browsers ◦ (HTMLUnit, PhantomJS)
Page Objects Modela áreas UI como objetos Reusabilidad/Mantenibilidad Permite la
herencia
Modules Reutilización de bloques UI entre Pages Permite declarar métodos
( = acciones) Ejemplo: menú lateral, search input, etc.
jQuery content selection Find, filter and interact with DOM elements
Permite: • Assert content • Trigger actions
… y más... Elementos existentes por convención: • title •
heading Lanzar misma batería de pruebas en FF, Chrome, IE, etc. Reporting AJAX support
None
Alternativas • WebDriver a pelo • Apache JMeter • Canoo
WebTest • Grails functional test
Ejemplo integrado en Scrum (I) • Sprint Planning ◦ Se
decide si se va a crear test funcional o no ◦ Se incluye en estimación y se crea tarea en US • Pertenecía al DoD
Ejemplo integrado en Scrum (II) • QA ◦ Define las
pruebas en Cucumber ◦ [a veces también las implementan] • Desarrolladores ◦ Implementan las pruebas ◦ [a veces también las definen]
Debate • ¿Queremos tests funcionales? • En caso afirmativo, ◦
¿cuándo, para qué? ◦ ¿qué framework utilizar?