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
Snapshot Testingってやつがあってな at PHP勉強会
Search
Kazuki Higashiguchi
February 28, 2018
Technology
0
160
Snapshot Testingってやつがあってな at PHP勉強会
第123回 PHP勉強会@東京 で発表した祭の資料です。
https://qiita.com/Khigashiguchi/items/1c50105aff2c8acf45d5
Kazuki Higashiguchi
February 28, 2018
Tweet
Share
More Decks by Kazuki Higashiguchi
See All by Kazuki Higashiguchi
Design of a Stateful system for Robust Deployment and Observability
hgsgtk
0
1.1k
A guide to joining operational work in your new DevOps team
hgsgtk
1
1.2k
HTTP Tunneling in Go
hgsgtk
0
1k
ブラウザ自動操作技術の深層へ、直接触れて学ぶ WebDriver と Chrome DevTools Protocol
hgsgtk
3
6k
HTTP Server on random available port in Go
hgsgtk
0
770
Agile Testingを夢見たテスト自動化 〜ATDDへの挑戦から始まる 1年間の試行錯誤〜 / dreaming agile testing at basebank
hgsgtk
14
7.2k
Create Go WebDriver client from scratch
hgsgtk
1
1.9k
PHPでWeb Driver Clientを自作する〜己の手でブラウザ操作自動化を完全理解する方法〜 / phpcon2021
hgsgtk
2
2.2k
振り返りを積み上げて自分たちのプラクティスとして昇華•体得していくための仕組みと考え方 / ScrumFestMikawa2021
hgsgtk
3
2.2k
Other Decks in Technology
See All in Technology
生産性向上チームの紹介
cybozuinsideout
PRO
1
870
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
1
540
エンジニアのキャリアをちょっと楽しくする3本の軸/Three Pillars to Make an Engineer's Career More Enjoyable
kwappa
0
2.7k
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
2
240
ServiceNow Knowledge Learning Rise up
manarobot
0
210
アクセス制御にまつわる改善 / Improving access control
itkq
0
550
私が trocco を推す理由
__allllllllez__
1
250
Reducing Cross-Zone Egress at Spotify with Custom gRPC Load Balancing Recap
koh_naga
0
210
一生覚えておきたい「システム開発=コミュニケーション」〜初めての実務案件振り返りLT〜
maimyyym
1
160
Building Dashboards as a Hobby
egmc
0
230
20240418_Google ColabにLLMが搭載されたようなのでPython x データ分析の勉強方法を考えてみる
doradora09
0
140
DMM.com アルファ室採用案内資料
hsugita
1
160
Featured
See All Featured
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Designing for humans not robots
tammielis
248
25k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.9k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Debugging Ruby Performance
tmm1
70
11k
In The Pink: A Labor of Love
frogandcode
138
21k
Design by the Numbers
sachag
274
18k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
17
1.4k
Making the Leap to Tech Lead
cromwellryan
124
8.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
17
6.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
Transcript
ୈճ1)1ษڧձ!౦ژ #"4&גࣜձࣾ ౦ޱᏻʢ!,IJHBTIJHVDIJʣ 4OBQTIPU5FTUJOH͕ͬͯͭ͋ͬͯͳ
ࣗݾհ !,IJHBTIJHVDIJ౦ޱᏻ w ॴଐɿ#"4&גࣜձࣾ #"4&1SPEVDU%JWJTJPOαʔόαΠυΤϯδχΞ w 1)1 $BLF1)1 w
ࣄɿܾࡁ։ൃɺ1)1ɾ$BLF1)1ͷόʔδϣϯΞοϓ
Έͳ͞Μ
طଘͷίʔυʹςετ͋Δ ڥͰ͔͢ʁ
ແ͍ͱͭΒ͘ͳ͍Ͱ͔͢
Ͱɺςετॻ͍͔ͯΒϦ ϑΝΫλϦϯά͍ͨ͠
͔ͯɺςετ͕ແ͍ίʔυ ΛϦϑΝΫλϦϯάͨ͘͠ ͳ͍
ͱ͍͑ɺ༷શ༰Λཧղ ͯ͠ςετॻ͘ͷ݁ߏͳ ͠ΜͲ͞
طଘͷৼΔ͍อূ͢Δς ετΛগ͠Ͱָʹॻ͚Δ ํ๏ͳ͍ͩΖ͏͔
4OBQTIPU5FTUJOH
4OBQTIPU5FTUJOH 'BDFCPPL+4ϑϨʔϜϫʔΫɿ+FTUͷػೳ͕༗໊
4OBQTIPU5FTUJOH w ࠷ॳͷςετ࣮ߦ࣌ʹςετέʔεͷΞτϓοτ͕อଘʢε φοϓγϣοτʣ͞ΕΔ w εφοϓγϣοτΛࢹͰ֬ೝͯ͠ظ௨ΓͳΒ0, w ճҎ߱ΞτϓοτͱεφοϓγϣοτΛൺֱͯ͠Ұ க͍ͯ͠Εςετ͕௨Δ w
1)16OJU༻ͷϥΠϒϥϦΛ࡞ͬͯ͘ΕͯΔਓ͕͍Δ w HJUIVCDPNTQBUJFQIQVOJUTOBQTIPUBTTFSUJPOT IUUQTRJJUBDPNLFOUUJUFNTDGFEFEF
ྫɿbIFMMPXPSME`Λฦ͢"1* IUUQTRJJUBDPN,IJHBTIJHVDIJJUFNTDBGGDBDGE ˣϨεϙϯε݁ՌΛҾʹ͚ͩ͢
ྫɿbIFMMPXPSME`Λฦ͢"1* IUUQTRJJUBDPN,IJHBTIJHVDIJJUFNTDBGGDBDGE ˣॳճ࣮ߦ݁Ռ ͜ͷஈ֊ͰɺBTTFSUJPOߦΘΕͯͳ͍ɻ
ྫɿbIFMMPXPSME`Λฦ͢"1* IUUQTRJJUBDPN,IJHBTIJHVDIJJUFNTDBGGDBDGE @@TOBQTIPUT@@ͱ͍͏σΟϨΫτϦ͕ग़ݱ ςετέʔεͷΞτϓοτ͕อଘʢεφοϓγϣοτʣ͞ΕΔ w εφοϓγϣοτΛࢹͰ֬ೝͯ͠ظ௨ΓͳΒ0,
ྫɿbIFMMPXPSME`Λฦ͢"1* IUUQTRJJUBDPN,IJHBTIJHVDIJJUFNTDBGGDBDGE ճҎ߱ΞτϓοτͱεφοϓγϣοτΛൺֱ w όά͕ࠞೖͯ͠Կ͔݁Ռ͕มΘͬͨΒςετ͕མͪΔɻ w มΘ͍ͬͯΔ͜ͱ͕ظͷ߹ɺ ɹEVQEBUFTOBQTIPUTΛ͚ͭͯςετ࣮ߦ͢Εɺ ɹεφοϓγϣοτ͕ߋ৽͞ΕΔɻ
༻ҙ͞ΕͯΔϝιουҰཡ IUUQTRJJUBDPN,IJHBTIJHVDIJJUFNTDBGGDBDGE
Αͦ͞͏ͳͱ͜Ζ w ςετΛॻ͕͘ݮͰ͖ͦ͏ w ظΛఆٛ͢Δ࣌ؒݮɻߦͷେ͖͍݁Ռ͕ظͷ࣌ ͔ͳΓָʹͳΔͷͰɻ w ςετίʔυࣗମ͖ͬ͢Γ͢Δ w ༷͕͔Βͳͯ͘ςετ͕ॻ͚Δ
Αͦ͞͏ͳͱ͜Ζ ˠطଘͷৼΔ͍อূ͢Δςετͱͯ͠ͷׂ ͋ΔఔՌָͨͭͭ͠Ͱ͖Δɻ
ݒ೦ w εφοϓγϣοτϑΝΠϧͷཧ w ܻݸͷεφοϓγϣοτ͕Ұͭͷ@@TOBQTIPUT@@ʹอ͞Εͯͨ Β͔ͳΓਏͦ͏ɻ w ෳͷεφοϓγϣοτͰςετ͕མͪΔ࣌ w εφοϓγϣοτ͕ਖ਼͍͠έʔεͱίʔυͷํ͕ਖ਼͍͠έʔε͕ࠞ
ࡏͨ͠ͱ͖ͷΓ͚͕ඞཁʹͳΔ
ݒ೦ ˠͲ͜·ͰεφοϓγϣοτςετͰৼΔ͍Λ อূ͢Δ͖͔ݕ౼͕ඞཁɻ
+FTUʹ͓͚Δ 4OBQTIPU5FTUJOHͱ
+FTUʹ͓͚Δ4OBQTIPU5FTUJOH IUUQTGBDFCPPLHJUIVCJPKFTUEPDTKBTOBQTIPUUFTUJOHIUNM
+FTUʹ͓͚Δ4OBQTIPU5FTUJOH ɾεφοϓγϣοτςετ୯ମςετΛସ͢ΔͷͰ͔͢ʁ εφοϓγϣοτςετJestʹؚ·ΕΔ̎̌Ҏ্ͷΞαʔγϣϯͷ̍ͭʹա͗·ͤΜɻ εφοϓγϣοτςετͷͶΒ͍طଘͷ୯ମςετΛସ͢Δ͜ͱͰͳ͘ɺՃͷς ετ݁ՌΛఏڙͯ͠ςετʹ͓͚Δ࡞ۀෛ୲ΛݮΒ͢͜ͱͰ͢ɻ Ұ෦ͷγφϦΦͰεφο ϓγϣοτςετಛఆͷػೳηοτʢྫ: Reactίϯϙʔωϯτʣʹ͓͚Δ୯ମςετͷ ඞཁੑΛऔΓڈΔՄೳੑ͕͋Γ·͕͢ɺฒߦͯ͠ར༻͢Δ͜ͱͰ͖·͢ɻ IUUQTGBDFCPPLHJUIVCJPKFTUEPDTKBTOBQTIPUUFTUJOHIUNM
+FTUʹ͓͚Δ4OBQTIPU5FTUJOH ɾεφοϓγϣοτςετ୯ମςετΛସ͢ΔͷͰ͔͢ʁ εφοϓγϣοτςετJestʹؚ·ΕΔ̎̌Ҏ্ͷΞαʔγϣϯͷ̍ͭʹա͗·ͤΜɻ εφοϓγϣοτςετͷͶΒ͍طଘͷ୯ମςετΛସ͢Δ͜ͱͰͳ͘ɺՃͷς ετ݁ՌΛఏڙͯ͠ςετʹ͓͚Δ࡞ۀෛ୲ΛݮΒ͢͜ͱͰ͢ɻ Ұ෦ͷγφϦΦͰεφο ϓγϣοτςετಛఆͷػೳηοτʢྫ: Reactίϯϙʔωϯτʣʹ͓͚Δ୯ମςετͷ ඞཁੑΛऔΓڈΔՄೳੑ͕͋Γ·͕͢ɺฒߦͯ͠ར༻͢Δ͜ͱͰ͖·͢ɻ IUUQTGBDFCPPLHJUIVCJPKFTUEPDTKBTOBQTIPUUFTUJOHIUNM
ˠ͋͘·Ͱɺ୯ମςετͷBTTFSUJPOͷҰͭɻ εφοϓγϣοτςετॻ͍͔ͨΒͱݴͬͯຬ͍͚ͯ͠ͳ͍ɻ
ͱ͍͑ w */165ʹର͢Δ065165Λอূ͢ΔͰ͖Δػೳ ༗ӹɻ w ίϯτϩʔϥʔείʔϓͷ͍ςετέʔεʹ ߜΔͷ͕ྑ͍ॴײɻ w ϦϑΝΫλϦϯάɾઈೲظҊ݅ɾόʔδϣϯ Ξοϓࢪࡦͷࡍʹྗڧ͍ຯํʹͳͬͯ͘Εͦ͏ɻ
൵ใ
ಈ࡞ڥ 1)11)16OJUҎ্
όʔδϣϯґଘͷॲཧͳ͍Β͍͠Ͱ͢ ࣗ࡞Ͱ͖ΔʢΒ͍͠ʣ
·ͱΊ
·ͱΊ w 4OBQTIPU5FTUJOHͱ͍͏Ξαʔγϣϯख๏͕ ͋ͬͯศརɻ w ͰɺͪΌΜͱࣗͰॻ͘ͷ͕ͳΜ͔ͩΜͩҰ൪ ཧ w ࣌ؒత੍͕͋Δ߹ڧ͍ຯํʹͳͬͯ͘ ΕΔ͔
ৄ͍͍͠ํΣϒ 1)1ͰTOBQTIPUUFTUJOHΛΓ·ͤΜ͔ʁ
1)1FS,BJHJߦ͖·͠ΐ͏ʂ IUUQTQIQFSLBJHJKQ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ #"4&גࣜձࣾ ౦ޱᏻʢ!,IJHBTIJHVDIJʣ