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
71
Functional testing with Geb
Isidro López
December 04, 2015
Tweet
Share
More Decks by Isidro López
See All by Isidro López
Valor por encima de código: el poder del Despliegue Continuo
islomar
1
130
Pusheando en master, que es gerundio
islomar
2
200
Refactoring legacy code using Approval testing (Meetup Alicante)
islomar
3
110
Aventuras y desventuras de un mindundi en Spotify
islomar
3
1.4k
Mutation testing 101
islomar
3
120
Agile (mucho) más allá de Scrum
islomar
1
130
TCR workshop
islomar
1
450
Refactoring legacy code using Approval testing
islomar
0
30
"Modern" agile
islomar
1
120
Other Decks in Programming
See All in Programming
Zero Waste, Radical Magic, and Italian Graft – Quarkus Efficiency Secrets
hollycummins
0
230
StoreKit2によるiOSのアプリ内課金のリニューアル
kangnux
0
110
try!Swift Tokyo 2024 参加報告 LT
akidon0000
1
220
HUIT新歓2024「競技プログラミング、やってみませんか?」
slephy2784
1
270
障害対応を起点としたもっといい開発と運用のサイクル作りのためにできること / Hatena Enginner Seminar #29
polamjag
0
120
今、知っておきたい! 生成AIエージェントの世界
elith
3
350
ADRを一年運用してみた/adr_after_a_year
hanhan1978
7
2.4k
エンターテイメント業界で利用されるAWS
demuyan
0
210
Rethinking UI building strategies @ SFI 2024
letelete
0
270
Java 22 Overview
kishida
1
180
はてなにおける CSS Modules、及び CSS Modules に足りないもの / CSS Modules in Hatena, and CSS Modules missing parts
mizdra
7
920
Snowflakeで眠ったデータを起こそう!
estie
0
120
Featured
See All Featured
What the flash - Photography Introduction
edds
64
11k
The Pragmatic Product Professional
lauravandoore
25
5.8k
For a Future-Friendly Web
brad_frost
172
9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
121
39k
Fantastic passwords and where to find them - at NoRuKo
philnash
37
2.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
Statistics for Hackers
jakevdp
789
220k
What's in a price? How to price your products and services
michaelherold
237
11k
Designing with Data
zakiwarfel
96
4.8k
The Invisible Customer
myddelton
114
12k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.1k
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?