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
Browser Automated Tests
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
derek-b
April 09, 2018
Programming
410
1
Share
Browser Automated Tests
Combine Headless Chrome with Mocha, Chai and Node to automatically test your web pages.
derek-b
April 09, 2018
More Decks by derek-b
See All by derek-b
What Raising 3 Kids Taught Me About Working with Users
derekb
0
75
Pardon the disruption: a user-first approach to software design
derekb
0
100
Teaching Through Code Review
derekb
0
120
Add Location-Based Searching to Your Site with Elasticsearch
derekb
0
63
Add Location-based Searching to Your PHP App with Elasticsearch
derekb
1
370
Map, Filter, and Reduce in PHP
derekb
0
860
You Version Your Code, Why Not Your Database?
derekb
0
77
Taming Your Data with Elasticsearch - PHP Benelux
derekb
1
500
What Raising 3 Kids Taught Me About Working With Users
derekb
0
430
Other Decks in Programming
See All in Programming
PHPでローカル環境用のSSL/TLS証明書を発行することはできるのか? #phpconkagawa
akase244
0
120
Kingdom of the Machine
yui_knk
2
1.2k
AIと共に生きる技術選定 2026
sgash708
0
110
AI-DLC Deep Dive
yuukiyo
9
5k
実践CRDT
tamadeveloper
0
610
iOS機能開発のAI環境と起きた変化
ryunakayama
0
190
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
320
Import assertionsが消えた日~ECMAScriptの仕様はどう決まり、なぜ覆るのか~
bicstone
2
150
属人化しないコード品質の作り方_2026.04.07.pdf
muraaano
0
280
Terraform言語の静的解析 / static analysis of Terraform language
wata727
1
120
第3木曜LT会 #28
tinykitten
PRO
0
120
UIの境界線をデザインする | React Tokyo #15 メイントーク
sasagar
2
410
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
70
39k
The SEO Collaboration Effect
kristinabergwall1
1
430
Utilizing Notion as your number one productivity tool
mfonobong
4
300
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
230
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
WCS-LA-2024
lcolladotor
0
560
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
The untapped power of vector embeddings
frankvandijk
2
1.7k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Transcript
Browser Automated Tests Derek Binkley @DerekB_WI
Derek Binkley @DerekB_WI Designer? Developer? Other?
What is It?
Derek Binkley @DerekB_WI Testing Tools • Text based • Page
recorder • Selenium WebDriver • Browser Emulator
Derek Binkley @DerekB_WI Headless Chrome • June 2017 • Full
browser • Chrome Dev Tools • No GUI
Is Anybody There?
Derek Binkley @DerekB_WI Why? • Reliability • Dependability • Sleep
better after an update
What do we need? Node Chrome Puppeteer Mocha Chai
Derek Binkley @DerekB_WI Install • npm init • npm i
—save mocha chai • npm i --save puppeteer • Add test script to package.json
Derek Binkley @DerekB_WI Setup Command package.json
Examples
Derek Binkley @DerekB_WI Basics • Test Defined as JavaScript •
Full Access to DOM • Assertions using Chai
Derek Binkley @DerekB_WI First Test
Derek Binkley @DerekB_WI First Test
Derek Binkley @DerekB_WI Test Search
Derek Binkley @DerekB_WI Test Search
Derek Binkley @DerekB_WI Test Failed
Derek Binkley @DerekB_WI Test Failed
Derek Binkley @DerekB_WI Screenshots
Derek Binkley @DerekB_WI Screenshots
Derek Binkley @DerekB_WI Interactive Test
Derek Binkley @DerekB_WI Interactive Test
Derek Binkley @DerekB_WI Reacting to Changes • Changing link names
• Changing server builds • Partners changing integrations • New branding
Derek Binkley @DerekB_WI Thanks • @DerekB_WI • http:/ /derekb-wi.com
Derek Binkley @DerekB_WI Resources • https:/ /developers.google.com/web/updates/2017/06/ headless-karma-mocha-chai • https:/
/medium.com/@ankit_m/ui-testing-with- puppeteer-and-mocha-part-1-getting-started- b141b2f9e21 • https:/ /github.com/GoogleChrome/puppeteer • https:/ /github.com/checkly/puppeteer-examples