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
Evolution on AI Agent and Beyond - AGI への道のりと、シンギュラリティの3つのシナリオ
masayamoriofficial
0
130
生成AI利用プログラミング:誰でもプログラムが書けると 世の中どうなる?/opencampus202508
okana2ki
0
190
どこで動かすか、誰が動かすか 〜 kintoneのインフラ基盤刷新と運用体制のシフト 〜
ueokande
0
180
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
2
20k
Product Management Conference -AI時代に進化するPdM-
kojima111
0
190
EKS Pod Identity における推移的な session tags
z63d
1
200
認知戦の理解と、市民としての対抗策
hogehuga
0
290
あとはAIに任せて人間は自由に生きる
kentaro
3
1.1k
ECS モニタリング手法大整理
yendoooo
1
120
Claude Code x Androidアプリ 開発
kgmyshin
1
540
Rethinking Incident Response: Context-Aware AI in Practice - Incident Buddy Edition -
rrreeeyyy
0
130
Engineering Failure-Resilient Systems
infraplumber0
0
130
Featured
See All Featured
Docker and Python
trallard
45
3.5k
Being A Developer After 40
akosma
90
590k
How to Ace a Technical Interview
jacobian
279
23k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.6k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.8k
Documentation Writing (for coders)
carmenintech
73
5k
Become a Pro
speakerdeck
PRO
29
5.5k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
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͋Γ͕ͱ͏