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
レガシーコードで ビジュアルリグレッションテスト をやってみた!
Search
aharenchi
December 01, 2019
Technology
1
2.2k
レガシーコードで ビジュアルリグレッションテスト をやってみた!
PHP Conference 2019 Lightning Talk@2019/12/01 の発表資料です。
BackstopJSでのビジュアルリグレッションテストを行った話です。
aharenchi
December 01, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
2
210
テストを軸にした生き残り術
kworkdev
PRO
0
220
Create Ruby native extension gem with Go
sue445
0
130
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
22
12k
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
200
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
6
750
AIがコード書きすぎ問題にはAIで立ち向かえ
jyoshise
1
280
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
890
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/06 - 2025/08
oracle4engineer
PRO
0
110
AIエージェントで90秒の広告動画を制作!台本・音声・映像・編集をつなぐAWS最新アーキテクチャの実践
nasuvitz
3
360
メルカリIBISの紹介
0gm
0
410
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
180
Featured
See All Featured
Bash Introduction
62gerente
615
210k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Rails Girls Zürich Keynote
gr2m
95
14k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Navigating Team Friction
lara
189
15k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
Transcript
ϨΨγʔίʔυͰ ϏδϡΞϧϦάϨογϣϯςετ ΛͬͯΈͨʂ 1)1$POGFSFODF-JHIUOJOH5BML! Ѩ࿈ஐܙ
ࣗݾհ ͋ΕΜ ΤΩαΠτגࣜձࣾ ৽ଔ1)1FS !ZVDP@NN
ྐྵʜ ฐࣾͷͱ͋ΔͭͷαʔϏε جຊػೳ͕΄ͱΜͲಉͩͬͨ͡ͷͰɺ ಉ͡ίʔυͰ։ൃ͞Ε͍ͯͨ˝
αʔϏεಠࣗʹਐԽ࢝͠ΊɺಠࣗػೳͷͨΊͷ ग़͚͠ίʔυ͕૿͍͖͑ͯɺߴʹෳࡶʹͳͬͨɻ Ὂ͜ͷ··͕ΜΔ ⾣αʔϏεɺͭͷϓϩδΣΫτʹ͢Δ
ϓϩδΣΫτΛίϐʔ͠ɺ̎ͭ༻ҙ͢Δ͜ͱͰ ͚Δ͜ͱʹޭɻ ࣍ʹɺෆཁʹͳͬͨยํͷ੩తϑΝΠϧॲཧΛ আ͢Δඞཁ͕͋Δɻ˝
੩తϑΝΠϧͷআྃɻ ݅ۙ͘ͷϖʔδΛݕূ͢Δํ๏ʁ ⾣खಈͰݕূ Ὂʜʜ
੩తϑΝΠϧͷআྃɻ ݅ۙ͘ͷϖʔδΛݕূ͢Δํ๏ʁ ὊखಈͰݕূ ⾣ϏδϡΞϧϦάϨογϣϯςετͰݕূ
ϏδϡΞϧϦάϨογϣϯςετͱ εΫϦʔϯγϣοτΛࡱӨ͠ɺ લޙͰ͕ࠩग़͍ͯͳ͍͔ݕূ͢Δςετ $44ίʔυมߋʹΑΔද่ࣔΕ͕ͳ͍͔ݕূ͢Δͷʹ༏Ε͍ͯΔ ݕূͰ͖Δ͜ͱ ɾϘλϯը૾ͷදࣔՄ൱ ɾϖʔδͷදࣔՄ൱ ݕূͰ͖ͳ͍͜ͱ ɾϖʔδભҠ
͏ͷ #BDLTUPQ+4ɹ ϏδϡΞϧϦάϨογϣϯςετΛߦ͑ΔϑϨʔϜϫʔΫ ςετͷઃఆ CBDLTUPQKTPO ɹ εΫϦʔϯγϣοτੜ
มߋલͷεΫϦʔϯγϣοτʢ3FGFSFODFʣΛอଘ มߋޙͷεΫϦʔϯγϣοτʢ5FTUʣΛอଘ ྆ऀΛൺֱͨ͠Ϩϙʔτੜ ςετͷྲྀΕ ࢲୡ͕Δ͜ͱʂ Node.js + Puppeteer or ChromyJS
ςετ४උɹඞਢ ̍ൺֱͰ͖Δڥͷ༻ҙ ྫɿຊ൪ڥͱεςʔδڥ ςετͷઃఆ ʲඞਢ߲ʳ JEɿϨϙʔτλΠτϧ WJFXQPSUTɿࡱӨը໘αΠζ TDFOBSJPTɿςετ༰ ɹMBCFMɿςετλΠτϧ
ɹVSMɿมߋޙ63-ɹ SFGFSFODF6SMɿมߋલ63- มߋޙڥ มߋલڥ
ৄࡉઃఆ 1VQQFUFFSPS$ISPNZ+44DSJQUΛ͏͜ͱͰҎԼͷରԠ͕Մೳ w ϕʔγοΫೝূରԠ w ϩάΠϯඇϩάΠϯը໘ରԠ w ࡱӨલͷ6*มߋରԠ ϚεΦʔόʔը૾ࠩ͠ସ͑ ςετ४උɹΦϓγϣϯ
TDFOBSJPTɿςετ༰ ɹPO#FGPSF4DSJQUɿϒϥβͷઃఆ ɹPO3FBEZ4DSJQUɿεΫϦʔϯγϣοτલͷ6*ঢ়ଶมߋ
४උྃʂ ⾣ςετ࣮ߦ Ὂʹ͛Δ
݁Ռ ϛογϣϯίϯϓϦʔτʂʂʂʂʂ˝
·ͱΊ ϏδϡΞϧϦάϨογϣϯςετͷྑ͍ͱ͜Ζ w ද่ࣔΕΛݕग़Ͱ͖Δ w ςετͷ༻ҙ͕༰қ ͜Μͳਓʹಛʹ͓͢͢Ίʂ ςετͷͳ͍ڥͰද่ࣔΕ͕ා͘ϦϑΝΫλϦ ϯά͕Ͱ͖ͯͳ͍ํ ɹΊͤ͟ʂϨΨγʔίʔυ͔Βͷ٫ʂ
͓·͚ հهࣄɿ ʮ#BDLTUPQ+4ͰϏδϡΞϧϦάϨογϣϯςετʂʯ IUUQTRJJUBDPNBIBSFODIJJUFNTDGEFD a͋Γ͕ͱ͏