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
Playwrightから始めるVisual Regression Testingのススメ by...
Search
totto2727
August 24, 2024
Programming
2
1.9k
Playwrightから始めるVisual Regression Testingのススメ by とっと
フロントエンドカンファレンス北海道2024の5分枠で発表した内容です!
totto2727
August 24, 2024
Tweet
Share
More Decks by totto2727
See All by totto2727
Cloudflareを使い倒す!
totto2727
1
27
NotionのURLをWorkersで綺麗にしよう!
totto2727
0
470
Other Decks in Programming
See All in Programming
フロントエンドカンファレンス北海道2024 『小規模サイトでも使えるVite 〜HTMLコーディングをよりスマートに〜』長谷川広武(ハム)
h2ham
1
2.6k
ESLint Rule により事業, 技術ドメインに沿った制約と誓約を敷衍させるアプローチのすゝめ
shinyaigeek
1
2.9k
暴走のウホーレン 〜想いってのはvimrcにしないと伝わらないんだぜ〜 / iosdc_japan_2024
uhooi
1
240
大公開!iOS開発の悩みトップ5 〜iOSDC Japan 2024〜
ryunakayama
0
190
Rechartsで楽にゴリゴリにカスタマイズする!
10tera
1
140
Prompt Cachingは本当に効果的なのか検証してみた.pdf
ttnyt8701
0
510
長期運用プロダクトの開発速度を維持し続けるためのリファクタリング実践例
wataruss
8
2.6k
BasicBasic認証
sadnessojisan
5
3.2k
ドメイン駆動設計を実践するために必要なもの
bikisuke
3
320
『ドメイン駆動設計をはじめよう』中核の業務領域
masuda220
PRO
5
930
私のEbitengineの第一歩
qt_luigi
0
440
Amazon Neptuneで始める初めてのグラフDB ー グラフDBを使う意味を考える ー
satoshi256kbyte
2
230
Featured
See All Featured
Ruby is Unlike a Banana
tanoku
96
11k
Fantastic passwords and where to find them - at NoRuKo
philnash
48
2.8k
Docker and Python
trallard
39
3k
Music & Morning Musume
bryan
46
6k
The Cost Of JavaScript in 2023
addyosmani
41
5.2k
Building a Scalable Design System with Sketch
lauravandoore
458
32k
Robots, Beer and Maslow
schacon
PRO
157
8.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
47
48k
Side Projects
sachag
451
42k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
23
1.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
32k
Transcript
1MBZXSJHIU͔Β࢝ΊΔ7JTVBM 3FHSFTTJPO5FTUJOHͷεεϝ גࣜձࣾΏΊΈͱͬͱ
ࣗݾհ w ͱͬͱ w 9ͱ(JU)VCɿ!UPUUP w גࣜձࣾΏΊΈॴଐ w ೖࣾͷϑϩϯτΤϯυΤϯδχΞ w
ϏδϡΞϧϦάϨογϣϯςετͷܦݧɿ͙Β͍
ձࣾհ ΦʔϓϯϋϯυϒοΫ
͋Δͷ࡞ۀ ʓʓϖʔδͷͨΊʹʓʓίϯϙʔωϯτΛमਖ਼ʂ ʢʓʓϖʔδΛ֬ೝͯ͠ʜʣ मਖ਼͞Ε͍ͯΔɺϤγοʂ
ޙʜ ʢमਖ਼ͨ͠ϖʔδͱผͷϖʔδͷʣ 6*่͕Ε͍ͯ·͢ʂʂʂ
ݪҼ w ίϯϙʔωϯτઃܭ͕ྑ͘ͳ͔ͬͨ w γεςϜͷཧղ͕͔ͬͨ w ࣮ɺϨϏϡʔͷࡍʹ֬ೝ͕ෆेͩͬͨ
ͱ͍͑ ຖճશϖʔδ֬ೝ͢ΔͷΓͨ͘ͳ͍ʂʂʂ ʢతʹݫ͍͠ʣ
ͦ͏ͩʂςετͰղܾ͠Α͏ʂ
ϑϩϯτΤϯυͷ৭ʑͳςετ w ൣғผ w ੩తղੳ w ୯ମςετ w ݁߹ςετ w
&&ςετ w తผ w ΠϯλϥΫγϣϯςετ w ΞΫηγϏϦςΟςετ w εφοϓγϣοτςετ w 6*ίϯϙʔωϯτΤΫεϓϩʔϥ w ϏδϡΞϧϦάϨογϣϯςετ w FUDʜ ࢀߟࢿྉɿ w ༁ʮϑϩϯτΤϯυΞϓϦέʔγϣϯͷ੩తɺ୯ମɺ݁߹ɺ&&ςετʯCZ,FOU$%PEET w &&ςετͷఆٛΛΓ͍ͨ
ϏδϡΞϧϦάϨογϣϯςετ
ϏδϡΞϧϦάϨογϣϯςετ w Ҏ߱Ͱ735ͱলུ͠·͢ w ը૾ͷൺֱΛߦ͍ࠩΛݕग़͢Δςετ w 6*ͷมߋʢ$44ؚΉʣݕͰ͖Δ
735ͷ͓͓·͔ͳྲྀΕ 8FCαΠτͷ৴ڥͷ্ཱͪ͛ εφοϓγϣοτऔಘ લճͷը૾ͷൺֱ Ϩϙʔτͷੜ
ҙ֎ͱߟ͑Δ͜ͱ͕ଟ͍ʜ w ࡱӨ͢Δର w ը૾ͷอଘॴ w εφοϓγϣοτςετͷߋ৽λΠϛϯά w ϨϏϡʔମ੍ w
$*$%
ͱ͍͏͜ͱͰ͓ࢼ͠ΩοτΛ࡞Γ·ͨ͠ʂ QMBZXSJHIUWSUIBOETPO w ߏ w ࡱӨ͢Δରɿϖʔδ୯Ґ w ը૾ͷอଘॴɿ(JUϦϙδτϦ w $*$%
w 1MBZXSJHIU w (JU)VC"DUJPOT(JU)VC1BHFT w "DUJPOTͰ6QEBUFδϣϒΛ࣮ߦ͢Δͱ13͕ੜ͞ΕΔ
1MBZXSJHIU w &&ςεςΟϯάϑϨʔϜϫʔΫ w ϒϥβΛίʔυϕʔεͰૢ࡞Ͱ͖Δ w +BWB4DSJQUҎ֎ʹ1ZUIPOͳͲ৭ʑͳ࣮͕͋Γ·͢ w ϘλϯͷΫϦοΫεΫϩʔϧɺ։ൃऀπʔϧͷૢ࡞ͳͲ৭ʑͰ͖Δ w
༷ʑͳϒϥβʹରԠ͍ͯ͠ΔଞɺσόΠεͷϓϦηοτଟ͘ϓϩδΣ Ϋτʹ߹ΘͤͯॊೈʹςετΛ࣮ݱͰ͖Δ
(JU)VC"DUJPOT w $*$%ύΠϓϥΠϯΛఏڙ͢ΔΫϥυαʔϏεͷҰͭ w (JU)VCͱີʹ࿈ܞ͍ͯ͠Δ w ϦϙδτϦपΓͷτϦΨʔ͕ඇৗʹ๛ w ϦϙδτϦ͕͋Εڥߏஙෆཁ w
ϦϙδτϦͷૢ࡞͕༰қ w 1VCMJDϦϙδτϦͰ͋Εɺجຊతʹແ੍ݶʹར༻Մೳ
(JU)VC1BHFT w (JU)VCϦϙδτϦͱؔ࿈͢Δ8FCαΠτΛϗεςΟϯάͰ͖ΔαʔϏε w ࠓճ735ͷϨϙʔτΛϗεςΟϯά͢ΔͨΊʹར༻͠·͢ w ͭͷυϝΠϯ͔࣋ͯ͠ͳ͍ͱ͍͏ܽ͋Γ·͕͢ɺඇৗʹ͓खܰʹར ༻Ͱ͖ΔػೳͰ͢ w ಉ࣌ʹෳͷϒϥϯν͔ΒσϓϩΠ͍ͨ͠ʜʂͱ͍͏߹ɺ/FUMJGZ
7FSWFMɺ$MPVE fl BSF1BHFTͳͲΛར༻͠·͠ΐ͏
735ͷ͓͓·͔ͳྲྀΕ 8FCαΠτͷ৴ڥͷ্ཱͪ͛ εφοϓγϣοτऔಘ લճͷը૾ͷൺֱ Ϩϙʔτͷੜ 1MBZXSJHIUͷ ୲ൣғ πʔϧʹΑͬͯ Ұ෦ʹಛԽ͍ͯ͠Δͷ SFHTVJUͳͲ
ίʔυͱϨϙʔτ ͘ͳ͍ͬͯΔ ෦͕ࠩ ϖʔδಡΈࠐΜͰ735Ͱ͢Δ ͚ͩͳΒ͜Ε͚ͩͰ͍͍ ʢ࣮ࡍΠϯλϥΫγϣϯͳΜΒ͔ͷ ػ͕ڬ·Δ͜ͱ͕ଟ͍ʣ
ੜ͞Εͨ13ͱ1BHFT w Ϩϙʔτ w IUUQT UPUUPHJUIVCJP WSUIBOETPO w ߋ৽13 w
IUUQTHJUIVCDPN UPUUPWSU IBOETPOQVMM
վળ৭ʑ w ίϯϙʔωϯτϨϕϧ735 w $*ڥͱϩʔΧϧڥΛἧ͑Δ w ଞͷ735πʔϧͷݕ౼ w ύϑΥʔϚϯε w
&&ςετͱͷ͍͚ w FUDʜ
ίϯϙʔωϯτϨϕϧͷ735 w ϑϧϖʔδͷ735࣮͕؆୯ͳΑ͏ʹݟ͑ͯམͱ͕݀͠Կ͔͋Δ w େ͖ͳ͕ࠩग़Δͱຊདྷݕग़͔͕ͨͬͨࠩ͠ຒΕΔ w දࣔ֎ͷը૾ͷಡΈࠐΈ w ίϯϙʔωϯτϨϕϧʹׂ͢Δ͜ͱͰɺΑΓৄࡉ͔࣮ͭ֬ʹ735ͷԸܙ Λड͚Δ͜ͱ͕Ͱ͖Δ
ίϯϙʔωϯτϨϕϧͷ735 w 1MBZXSJHIUͷίϯϙʔωϯτςετػೳʢ։ൃதʣ w ಛఆͷίϯϙʔωϯτͷΈϒϥβͰϨϯμϦϯάͰ͖Δ w ࣌ɺ3FBDUɺ4WFMUFɺ7VFɺ4PMJEͰར༻Ͱ͖Δ w 6*ίϯϙʔωϯτΤΫεϓϩʔϥ 735
w 4UPSZCPPLͳͲͱΈ߹ΘͤΔ͜ͱͰ࣮ݱ͢Δ w දతͳΈ߹Θͤɿ4UPSZCPPL TUPSZDBQ SFHTVJU
%PDLFSΛར༻ͨ͠735 w ͓ࢼ͠ΩοτͰ$*Ͱอଘͨ͠ը૾ΛϩʔΧϧͰྲྀ༻Ͱ͖·ͤΜ w $*ͷΈͰ࣮ߦ͢Δ߹ʹͳΒͳ͍Ͱ͕͢ɺϩʔΧϧͰҰ෦͚࣮ͩߦ ͍ͨ͠߹ɺϑΥϯτͳͲͰ͕ࠩग़ΔՄೳੑ͕ߴ͍Ͱ͢ w ϩʔΧϧͱ$*ͷ྆ํͰ735Λ࣮ߦ͢Δ߹ɺಉ͡%PDLFS*NBHFΛར༻ ͯ͠ςετ͢Δ͜ͱΛ͓͢͢Ί͠·͢ w
1MBZXSJHIUͷެࣜυΩϡϝϯτ w ຊޠڥ͚ͷ1MBZXSJHIU%PDLFS fi MF
ଞͷ735πʔϧ w ۙɺ735ઐͷ༗༻ͳπʔϧɺαʔϏε͕ొ͍ͯ͠·͢ w ΫϥυαʔϏε w $ISPNBUJDɺ-PTU1JYFM w πʔϧ w
-PTU1JYFMɺSFHTVJU ͱTUPSZDBQ w ʹ7JTVBM3FHSFTTJPO5FTUJOHΛ࢝ΊΔͳΒͲΜͳબࢶ͕͋Δ͔
ࢀߟࢿྉͷհ w ϑϩϯτΤϯυ։ൃͷͨΊͷςετೖࠓ͔ΒͰ͓͖͍ͬͯͨࣗಈς ετઓུͷඞਢࣝ w ࠓඞཁͳجૅ͔ࣝΒ࣮ફ·Ͱཏ͞Ε͍ͯΔ w ϥΠϒϥϦπʔϧͷ༷มߋ͋ΔͨΊɺಡΉͳΒࠓ͕͓͢͢Ί w ϏδϡΞϧϦάϨογϣϯςετπʔϧ̐બʂϢʔβʔ͕ޠΔ֤πʔϧͷ
ϝϦοτ w ࠓճհ͍ͯ͠ͳ͍1MBZXSJHIUҎ֎ͷπʔϧ͕հ͞Ε͍ͯ·͢
Πϕϯτհ w ϑϩϯτΤϯυΧϯϑΝϨϯεւ ಓΞϑλʔτʔΫ0OMJOF w ΏΊΈº-BZFS9ºαΠϘζࣾ߹ ಉϑϩϯτΤϯυΧϯϑΝϨϯε ւಓޙࡇˏ౦ژ
ऴΘΓͰ͢ʂ ͋͝Γ͕ͱ͏͍͟͝·ͨ͠ʂ