SlideShare a Scribd company logo
Fronted	tes*ng	of	
(legacy)	websites
or our approach to e2e testing
3. November 2016
Scope
What? Who? Why?
What it is about
Our setup
- Gherkin, Selenium (php
legacy websites)
1
concepts behind our setup
2
getting there effortlessly
3
how do we approach the
problem
About me
Software Engineer at
a central european Webhosting company
part-time SE student at Oxford University
What’s the
problem?
Motivation
Our architecture
a lot of legacy
new features being added constantly
Typical scenario
vague feature requests
not sure about how some feature works
does it even work?
you broke my feature!!!
Theory
Rationale
Frontend testing of (legacy) websites
Not really
we need to agree on definitions
in order to reason about our choices
what are we trying to achieve?
V model
Need,	Want,	
Law
User	
Requirement
System	
Requirement
Architecture
Detailed	design
Implementa*on
Opera*onal	
system
Acceptance	test	
execu*on
System	test	
execu*on
Integra*on	test	
execu*on
Component	
test	execu*on
Test levels
Need,	Want,	
Law
User	
Requirement
System	
Requirement
Architecture
Detailed	design
Implementa*on
Opera*onal	
system
Acceptance	test	
execu*on
System	test	
execu*on
Integra*on	test	
execu*on
Component	
test	execu*on
Front-end testing
Need,	Want,	
Law
System	
Requirement
Architecture
Detailed	design
Implementa*on
Opera*onal	
system
System	test	
execu*on
Integra*on	test	
execu*on
Component	
test	execu*on
User	
Requirement
Acceptance	test	
execu*on
Test level
acceptance black box testing (e2e)
objectives?
test types
focus on functional testing
acceptance vs regression
Gherking,
Framework & BDD
huh?
“Acceptance testing doesn't
actually handle
conversations, and usually
works from an assumption
that the tests you're
writing are the right tests”
BDD gives us
conventions
the tool (Behat/Cucumber)
is to help with acceptance aspects
not the functional aspects
in “theory” allows customer interaction
BDD mantra
For who? What? How?
In order to buy a hosting
package
as a potential customer
I need to put Hosting package
to cart
Scenario: Adding a specific
The Hosting package to cart
Given…
Enough of theory
or 0 to 100 real quick
Choose testing framework
in the language of your
website
1
Setup your testing website
in env you can control
(any docker fans?)
2
Use real browsers with
javascript (if UI requires it)
3
Don’t reinvent the wheel!
4
Selenium in
seconds
docker FTW
https://github.com/SeleniumHQ/docker-selenium
we use https://github.com/elgalu/docker-selenium
Setup testing
framework
Behat / Cucumber / whatever language you use
Reuse as much DSL as you can
“I am on”, “I press button xxx”, etc..
Write your first useful feature
Caveats
controlling the state
how to jump straight to “Given” state?
Given I have following
products in cart:
– The Hosting
– .hu domain
– .eu domain
Put that state
under control
Use framework in your language so you can infiltrate
“behind the scenes”
Session
Fixed session name
Instantiate app in background
Manipulate your known session
Next steps
where to go from here
Profit!
Fix wikipedia (acceptance testing annoyance)
Beer!
Thank you
you are awesome
webonic.hu
michaelkubovic.com
fb.me/michael.kubovic

More Related Content

What's hot (19)

PDF
Selenium Tips & Tricks
Dave Haeffner
 
PPT
Watir
Sai Venkat
 
PPTX
Run Selenium Tests With Jenkins and BrowseEmAll
Daniel Herken
 
PPTX
How To Automate Cross Browser Testing
Daniel Herken
 
PPTX
Selenium tutorial
mindqqa
 
PPT
Selenium Primer
Debashish Chakrabarty
 
PPTX
Selenium WebDriver - Test automation for web applications
TSundberg
 
PPTX
Selenium Open Source Tool
onlinemindq
 
PDF
Practical Tips & Tricks for Selenium Test Automation
Sauce Labs
 
PPT
Selenium classes in mumbai
Vibrant Technologies & Computers
 
PDF
How To Use Selenium Successfully (Java Edition)
Sauce Labs
 
PPT
Selenium (1)
onlinemindq
 
PPTX
Selenium Basics Crashcourse
Daniel Herken
 
PPTX
Selenium
Andrew Krug
 
PPTX
Selenium IDE
b4usolution .
 
PPT
Selenium By Pravin Mishra
Pravin Mishra
 
PPTX
Selenium rc ppt
mindqqa
 
PPTX
Smarter ways to do selenium automation @ work, Selenium, automation
RIA RUI Society
 
Selenium Tips & Tricks
Dave Haeffner
 
Watir
Sai Venkat
 
Run Selenium Tests With Jenkins and BrowseEmAll
Daniel Herken
 
How To Automate Cross Browser Testing
Daniel Herken
 
Selenium tutorial
mindqqa
 
Selenium Primer
Debashish Chakrabarty
 
Selenium WebDriver - Test automation for web applications
TSundberg
 
Selenium Open Source Tool
onlinemindq
 
Practical Tips & Tricks for Selenium Test Automation
Sauce Labs
 
Selenium classes in mumbai
Vibrant Technologies & Computers
 
How To Use Selenium Successfully (Java Edition)
Sauce Labs
 
Selenium (1)
onlinemindq
 
Selenium Basics Crashcourse
Daniel Herken
 
Selenium
Andrew Krug
 
Selenium IDE
b4usolution .
 
Selenium By Pravin Mishra
Pravin Mishra
 
Selenium rc ppt
mindqqa
 
Smarter ways to do selenium automation @ work, Selenium, automation
RIA RUI Society
 

Viewers also liked (20)

PDF
saphire getabec
aftab younas
 
DOCX
CV-SHIW DAYAL
Chetan Eng Sir
 
PDF
NODIN_stor_logo
Markus Limseth
 
PDF
Antonio gonzález crã³nica betanzos 26 febreiro 2014
satelite1
 
PDF
Liverpool John Moores University isc 2016 17 application form pega interactive
Abhishek Bajaj
 
PDF
INTO London World Education Centre Into london-brochure-2016-17
Abhishek Bajaj
 
PDF
Treball impressora
impressorassss
 
DOC
Ejemplos lineas de tiempo
juanangel2010
 
RTF
Maria fernanda ocampo 6
Daniel Builes Castrillòn
 
RTF
Sorry no images available sig
bella123abc2
 
PDF
hari education certificate
haridas kuttappan
 
PDF
Scan 9
aftab younas
 
PPTX
Istanbul
Sirle Varkentin
 
PPT
Transplan[1]
guesta76e8c
 
DOC
Cristalerías roma
fernandezluu3
 
PPTX
Znacaj primene interneta u modernoj hotelskoj industriji
Iva Jovanovic
 
PDF
choro_flyer
Halysson Silva
 
PDF
Esc la rochelle new brochure
Abhishek Bajaj
 
saphire getabec
aftab younas
 
CV-SHIW DAYAL
Chetan Eng Sir
 
NODIN_stor_logo
Markus Limseth
 
Antonio gonzález crã³nica betanzos 26 febreiro 2014
satelite1
 
Liverpool John Moores University isc 2016 17 application form pega interactive
Abhishek Bajaj
 
INTO London World Education Centre Into london-brochure-2016-17
Abhishek Bajaj
 
Treball impressora
impressorassss
 
Ejemplos lineas de tiempo
juanangel2010
 
Maria fernanda ocampo 6
Daniel Builes Castrillòn
 
Sorry no images available sig
bella123abc2
 
hari education certificate
haridas kuttappan
 
Scan 9
aftab younas
 
Istanbul
Sirle Varkentin
 
Transplan[1]
guesta76e8c
 
Cristalerías roma
fernandezluu3
 
Znacaj primene interneta u modernoj hotelskoj industriji
Iva Jovanovic
 
choro_flyer
Halysson Silva
 
Esc la rochelle new brochure
Abhishek Bajaj
 
Ad

Similar to Frontend testing of (legacy) websites (20)

PPT
Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!
Puneet Kala
 
PDF
Code Coverage for Total Security in Application Migrations
Dana Luther
 
PPTX
Automated Web Testing With Selenium
Jodie Miners
 
PPTX
Test automation using selenium
Tờ Rang
 
PPTX
Anatomy of a Build Pipeline
Samuel Brown
 
PPTX
Slides from LAX & DEN usergroup meetings
10n Software, LLC
 
PPT
Unit testing php-unit - phing - selenium_v2
Tricode (part of Dept)
 
PDF
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
Minh Quân Đoàn
 
PPTX
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
edm00se
 
ODP
Continuous deployment-at-flipkart
Pankaj Kaushal
 
PPT
Steps to write Selenium
Rohit Thakur
 
PPT
Karate _Framework.ppt
SamKhan531862
 
PDF
Basics of Selenium IDE,Core, Remote Control
usha kannappan
 
PPT
soa
thiyagu0484
 
PPT
Testing Java Web Apps With Selenium
Marakana Inc.
 
PPTX
Automated Deployment
phpne
 
PPTX
PHP North-East - Automated Deployment
Michael Peacock
 
PPTX
Selenium.pptx
Pandiya Rajan
 
PDF
Jenkins & IaC
HungWei Chiu
 
PPT
Selenium
BugRaptors
 
Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!
Puneet Kala
 
Code Coverage for Total Security in Application Migrations
Dana Luther
 
Automated Web Testing With Selenium
Jodie Miners
 
Test automation using selenium
Tờ Rang
 
Anatomy of a Build Pipeline
Samuel Brown
 
Slides from LAX & DEN usergroup meetings
10n Software, LLC
 
Unit testing php-unit - phing - selenium_v2
Tricode (part of Dept)
 
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
Minh Quân Đoàn
 
AD113 Speed Up Your Applications w/ Nginx and PageSpeed
edm00se
 
Continuous deployment-at-flipkart
Pankaj Kaushal
 
Steps to write Selenium
Rohit Thakur
 
Karate _Framework.ppt
SamKhan531862
 
Basics of Selenium IDE,Core, Remote Control
usha kannappan
 
Testing Java Web Apps With Selenium
Marakana Inc.
 
Automated Deployment
phpne
 
PHP North-East - Automated Deployment
Michael Peacock
 
Selenium.pptx
Pandiya Rajan
 
Jenkins & IaC
HungWei Chiu
 
Selenium
BugRaptors
 
Ad

Recently uploaded (20)

PDF
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
PPTX
Extensions Framework (XaaS) - Enabling Orchestrate Anything
ShapeBlue
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PPTX
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
CloudStack GPU Integration - Rohit Yadav
ShapeBlue
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PDF
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
PDF
Empowering Cloud Providers with Apache CloudStack and Stackbill
ShapeBlue
 
PDF
Apache CloudStack 201: Let's Design & Build an IaaS Cloud
ShapeBlue
 
PPTX
Building and Operating a Private Cloud with CloudStack and LINBIT CloudStack ...
ShapeBlue
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
Extensions Framework (XaaS) - Enabling Orchestrate Anything
ShapeBlue
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
CloudStack GPU Integration - Rohit Yadav
ShapeBlue
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
Empowering Cloud Providers with Apache CloudStack and Stackbill
ShapeBlue
 
Apache CloudStack 201: Let's Design & Build an IaaS Cloud
ShapeBlue
 
Building and Operating a Private Cloud with CloudStack and LINBIT CloudStack ...
ShapeBlue
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 

Frontend testing of (legacy) websites