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
Visual regression testing - move fast and try n...
Search
Daniel Furze
September 27, 2016
Technology
0
670
Visual regression testing - move fast and try not to break things
My slides on automating visual regression testing, from Front End North 2016.
Daniel Furze
September 27, 2016
Tweet
Share
More Decks by Daniel Furze
See All by Daniel Furze
My First Progressive Webapp
furzeface
0
57
ES-What?!
furzeface
0
220
CSS - with speaker notes
furzeface
1
120
CSS
furzeface
1
210
The Lean Studio
furzeface
1
42
Don't be scared of open source!
furzeface
1
34
Other Decks in Technology
See All in Technology
アクセスピークを制するオートスケール再設計: 障害を乗り越えKEDAで実現したリソース管理の最適化
myamashii
1
250
TableauLangchainとは何か?
cielo1985
1
140
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
130k
「Chatwork」のEKS環境を支えるhelmfileを使用したマニフェスト管理術
hanayo04
1
210
モニタリング統一への道のり - 分散モニタリングツール統合のためのオブザーバビリティプロジェクト
niftycorp
PRO
1
220
大量配信システムにおけるSLOの実践:「見えない」信頼性をSLOで可視化
plaidtech
PRO
0
260
【LT会登壇資料】TROCCO新コネクタ「スマレジ」を活用した直営店データの分析
kazari0425
1
140
TLSから見るSREの未来
atpons
2
190
SRE不在の開発チームが障害対応と 向き合った100日間 / 100 days dealing with issues without SREs
shin1988
1
1.1k
IPA&AWSダブル全冠が明かす、人生を変えた勉強法のすべて
iwamot
PRO
2
220
オフィスビルを監視しよう:フィジカル×デジタルにまたがるSLI/SLO設計と運用の難しさ / Monitoring Office Buildings: The Challenge of Physical-Digital SLI/SLO Design & Operation
bitkey
1
290
United™️ Airlines®️ Customer®️ USA Contact Numbers: Complete 2025 Support Guide
flyunitedguide
0
720
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
Designing Experiences People Love
moore
142
24k
A Modern Web Designer's Workflow
chriscoyier
695
190k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
The Pragmatic Product Professional
lauravandoore
35
6.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Producing Creativity
orderedlist
PRO
346
40k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Side Projects
sachag
455
42k
Transcript
Move fast and try not to break things Visual Regression
Testing @furzeface bit.ly/df-vrt-slides
@furzeface bit.ly/df-vrt-slides Move fast and try not to break things
Visual Regression Testing
@furzeface bit.ly/df-vrt-slides "Regression testing is a method of software testing
that checks functionality that already exists against new changes that have been made to a codebase, to catch regressions." (Thanks, Wikipedia!) What?!
@furzeface bit.ly/df-vrt-slides Why?
@furzeface bit.ly/df-vrt-slides CSS is hard
@furzeface bit.ly/df-vrt-slides Testing is boring (sorry)
@furzeface bit.ly/df-vrt-slides When?
@furzeface bit.ly/df-vrt-slides Where? Test ALL the things???
@furzeface bit.ly/df-vrt-slides How? Sounds like hard work…
@furzeface bit.ly/df-vrt-slides How? Pick some software BackstopJS PhantomCSS OcularJS CSS
Critic Galen
@furzeface bit.ly/df-vrt-slides How? Install npm install phantomjs casperjs -g npm
install --save-dev backstopjs (requires Python)
@furzeface bit.ly/df-vrt-slides How? Generate a config npm explore backstopjs --
npm run genConfig
@furzeface bit.ly/df-vrt-slides How? Generate a config "scenarios": [ { "label":
"Styleguide", "url": "http://localhost:3000/styleguide", "selectors": [ "body", ".site-header", ".article", ".site-footer" ] } ] backstop.json
@furzeface bit.ly/df-vrt-slides How? Generate reference screenshots npm explore backstopjs --
npm run reference
@furzeface bit.ly/df-vrt-slides How? Generate reference screenshots
@furzeface bit.ly/df-vrt-slides Break your CSS How?
@furzeface bit.ly/df-vrt-slides
@furzeface bit.ly/df-vrt-slides How? Test npm explore backstopjs -- npm run
test
@furzeface bit.ly/df-vrt-slides
@furzeface bit.ly/df-vrt-slides
@furzeface bit.ly/df-vrt-slides
@furzeface bit.ly/df-vrt-slides How? Fix and re-test
@furzeface bit.ly/df-vrt-slides How? Bonus automation "scripts": { "bless": "npm explore
backstopjs -- npm run bless", "openReport": "npm explore backstopjs -- npm run openReport", "reference": "npm explore backstopjs -- npm run reference", "test": "npm explore backstopjs -- npm run test" } package.json
@furzeface bit.ly/df-vrt-slides Who? Everyone! Front-end developer Back-end developer Designer QA
engineer
@furzeface bit.ly/df-vrt-slides Summary Hurry up! Straightforward set up Peace of
mind Works for many people Improve confidence
@furzeface bit.ly/df-vrt-slides Thanks! You rock.
@furzeface bit.ly/df-vrt-slides Blog post bit.ly/df-vrt GitHub demo bit.ly/df-vrt-demo Slides/Transcript bit.ly/df-vrt-slides
Feedback bit.ly/df-vrt-feedback Further reading