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
The state of end-to-end testing for modern web ...
Search
vladikoff
September 30, 2023
Programming
0
68
The state of end-to-end testing for modern web apps
vladikoff
September 30, 2023
Tweet
Share
More Decks by vladikoff
See All by vladikoff
SmashingConf 2020
vladikoff
0
18
dotJS 2019 - Into WebAssembly
vladikoff
0
19
3D + the Web Platform
vladikoff
0
380
7 years of three.js
vladikoff
0
130
node.js @ GA 2015
vladikoff
0
440
JS Testing Stack - Full Stack Toronto 2014
vladikoff
1
810
Node.JS Intro - General Assembly
vladikoff
3
470
CSS Preprocessor Workflow with Grunt
vladikoff
3
2.7k
3D Voxel Worlds with voxel.js
vladikoff
1
1.9k
Other Decks in Programming
See All in Programming
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
120
Effective Signals in Angular 19+: Rules and Helpers @ngbe2024
manfredsteyer
PRO
0
130
rails statsで大解剖 🔍 “B/43流” のRailsの育て方を歴史とともに振り返ります
shoheimitani
2
930
フロントエンドのディレクトリ構成どうしてる? Feature-Sliced Design 導入体験談
osakatechlab
8
4.1k
103 Early Hints
sugi_0000
1
220
第5回日本眼科AI学会総会_AIコンテスト_3位解法
neilsaw
0
170
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.6k
testcontainers のススメ
sgash708
1
120
RWC 2024 DICOM & ISO/IEC 2022
m_seki
0
210
テストコード文化を0から作り、変化し続けた組織
kazatohiei
2
1.5k
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
110
17年周年のWebアプリケーションにTanStack Queryを導入する / Implementing TanStack Query in a 17th Anniversary Web Application
saitolume
0
250
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
33
3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Rails Girls Zürich Keynote
gr2m
94
13k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Being A Developer After 40
akosma
87
590k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Unsuck your backbone
ammeep
669
57k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
440
How to train your dragon (web standard)
notwaldorf
88
5.7k
Transcript
State of end-to-end testing for modern web applications VLAD FILIPPOV
About Vlad // software engineer // full stack web developer
// open-source contributor
In this talk … • History of web application testing
• Testing challenges • Learn new automation tools • Demos!
Testing Web Apps
Testing Web Apps
None
2004 → 2014 → 2024
2004 • First versions of Selenium 2006+ • First versions
of Selenium WebDriver • Headless webkit testing via PhantomJS
2014 (from my 2014 presentation)
2024 WebDriverIO Playwright
Goals of these tests • Track down code regressions •
Cross-browser compatibility testing • Cost-effective testing with real user behaviour • Full end-to-end workflow
Goals of these tests • Track down code regressions •
Cross-browser compatibility testing • Cost-effective testing with real user behaviour • Full end-to-end workflow • Confidence in shipping code
Testing Challenges
Writing tests “How do I find the password reset button
for my tests?”
Flaky tests “I’ve looked everywhere for it and gave up!”
Continuous integration challenges “What is wrong with my test?” “I
need to be able to run tests locally and in CI”
Solving these problems… • Flaky tests • Spending time writing
tests • Continuous integration • Debugging • Slow Tests
Automation & Testing Tools
None
WebDriverIO
Playwright - playwright.dev Speed Correctness Multi-environment Language Choice Usability Debugging
Lightweight QA Integration
Playwright solving our testing challenges
None
Reduce flakiness with auto-wait
Screenshots Parallelism
Accessibility testing Browser configuration
None
None
playwright-ai writes tests for you
None
Q&A Thank You! contact: vf.io slides: vf.io/refactor23