Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
新卒一年目が大規模WebアプリのE2Eテストに挑戦した話
Search
sugoikondo 近藤 豊峰
September 22, 2018
Technology
280
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
新卒一年目が大規模WebアプリのE2Eテストに挑戦した話
2018/09/22 Jser.info 使用スライド
sugoikondo 近藤 豊峰
September 22, 2018
More Decks by sugoikondo 近藤 豊峰
See All by sugoikondo 近藤 豊峰
誰でもできる!OpenAI Embedding API を活用して高度なレコメンド機能を実現してみよう - A story about implementing an advanced recommendation function using the OpenAI Embedding API
sugoikondo
2
560
OpenAI Embedding API を活用して、 高度なレコメンド機能を実装した話 - A story about implementing an advanced recommendation function using the OpenAI Embedding API
sugoikondo
0
390
Other Decks in Technology
See All in Technology
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
170
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
260
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
7
2.6k
Essential architectural thinking (revised edition)
ufried
0
110
継続的なAIコスト最適化
bgpat
1
270
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
0
230
今さら理解するウェブフォントver.2026
takanorip
3
550
生成AIで高い生産性を求められて、 悩み、乗り越えた話
mot_techtalk
2
150
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
400
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
290
Google Cloud Next Tokyo 26登壇時のスクリプト
recruitengineers
PRO
0
220
Snapshot Testing in Practice: Predictable and Reliable SwiftUI Views
fespinoza
0
170
Featured
See All Featured
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
340
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
440
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
320
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
420
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
450
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Large-scale JavaScript Application Architecture
addyosmani
516
110k
The Invisible Side of Design
smashingmag
301
52k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Transcript
৽ଔҰ͕ େنWEBΞϓϦͷ E2Eςετʹઓͨ͠. "UTVNJOF,POEP!IBJESBOU
"UTVNJOF,POEP 8FC"QQMJDBUJPO&OHJOFFS
E2Eςετ࣮·ͰͷܦҢ
ීஈͷ୲ϓϩμΫτʹ͍ͭͯ w "OHVMBS 4DBMBͷେن#UP#γεςϜ w "1*ΤϯυϙΠϯτݸ w ૯ߦ ߦ ϥΠϒϥϦܥআ֎
w ݱࡏઈࢍόϦόϦ૿Ճத ࠓɺ͜ͷγεςϜʹ͓͚Δ&&ςετ࣮ͷ͓ɻ
ͳͥE2Eςετʁ
ᶃೖ͔ࣾͯ͠ΒোΛى͜͠·͔ͬͨ͘Βɻ ͨͬͨϲ݄Ͱ ճҾ͖ى͜͢ தʹ݁ߏσΧΠোʜ
ᶄόοΫςετͷඞཁੑ͕ബ͔͔ͬͨΒ w ܕ҆શͳ4DBMBͷޭࡑ w େͷόάͷݪҼίϯύΠϧͰൃݟͰ͖Δ w །Ұͷෆ҆+BWBͰॻ͍ͨίʔυɺϥΠϒϥϦ w ΫϦςΟΧϧͳ෦طʹςετ࡞ࡁ w
ෳࡶͳܭࢉɾॲཧΛ͏෦طʹϢχοτςετ͕ ॻ͔Ε͍ͯΔঢ়گͩͬͨ
ᶅϑϩϯτʹ࣭୲อͷΈ͕ແ͔͔ͬͨΒ w ը໘ݸ w ͜ͷ֤ը໘͕ͦΕͧΕdݸͷίϯϙʔωϯτΛ๊͑Δ w େͳͷςετέʔεΛྻه͠खಈͰ֬ೝ w શͯࢹɾखಈͰͷ֬ೝ
ϑϩϯτͷςετɺॻ͜͏ʂ ʢ ॻ͍ͨ͜ͱແ͍͚Ͳ ʣ
࣮ͷख๏
ςετ༻ϥΠϒϥϦબఆ × Puppeteer jest w $ISPNFݶఆͳ͕Βߴػೳͳϒϥβૢ࡞ w ςετέʔε͕γϯϓϧʹॻ͚ɺυΩϡϝϯτ͕ݟ͔͔ͬͨ͢Β w ޙޫ
ςετΛॻ͖࢝Ίͨॴ ϩάΠϯը໘͔Βॻ͖࢝ΊΔ͜ͱʹ w ઈରʹࣦഊ͍͚ͯ͠ͳ͍ w ຆͲมߋ͕ൃੜ͠ͳ͍ w ࠷ػೳ͕গͳ͘ɺϢʔβʔετʔϦʔ͕Ұ͚ͭͩͳͷͰ ςετ͕ൺֱతॻ͖͍͢ ଟ
ςετΛॻ͍ͯΈͯɾɾɾ ྫ ϩάΠϯը໘ w ʰϢʔβʔೝূʱˠʰࢪઃબʱˠʰ৬һબʱˠʰύείʔυೖྗʱ ·Ͱ͕ҰͭͷϢʔβʔετʔϦʔ w ૯ߦߦ w ͨͩ͠ɺςετέʔε͚̎ͭͩ
ະϩάΠϯ࣌ͷϦμΠϨΫτॲཧɺϩάΠϯॲཧ
ॻ͍ͯΈͯͲ͏͔ͩͬͨʁ
࠷ॳͭΒΈ͕ଟ͔ͬͨɻɻ
࠷ॳʹײͨͭ͡ΒΈͷڞ༗
ᶃ࣮ߦ࣌ͷڥͰςετ݁Ռ͕มΘΔ ಉ͡ίʔυͳͷʹɺ࣮ߦ͢Δͨͼʹޭ͢Δ͔Ͳ͏͔͕มΘΔ ͦͷޙ͙͢ʹ࣮ߦ͢Δͱɺ
ᶃ࣮ߦ࣌ͷڥͰςετ݁Ռ͕มΘΔ w ωοτϫʔΫͷ࣭Ͱςετͷޭ͕มԽ ଟ w ՈͷωοτͰेதീམͪΔɻ w ༗ઢ͔ແઢ͔Ͱςετͷޭ͕มΘΔɻ w ฒྻ࣮ߦͷ෭࡞༻ʁ
ਖ਼ɺෆ໌ w ϘλϯͷΫϦοΫ࣌ʹɺΫϦοΫ͕લޙ͢Δ͜ͱ͕͋Δ w ύεϫʔυͷೖྗͰɺೖྗ͕લޙ͢Δ͜ͱ͕كʹൃੜ
w ςϯϓϨʔτͷमਖ਼Ͱςετ͕ಈ͔ͳ͘ͳΔ w )5.-ߏ $44Ϋϥεͷमਖ਼ηϨΫλΛ؆୯ʹഁյ͢Δ ᶄςετ͕յΕ͍͢
ྫ (&5ͷςετɺͲ͏͢Δʁ w (&5ͯ͘͠ΔσʔλΛ༧Ί࡞͓ͬͯ͘ʁ w আ͞Εͳ͍อূʁ w ॻ͖͑ΒΕͳ͍อূʁ UFTUEPVCMFͷΑ͏ͳϞοΫϥΠϒϥϦ͑ͳ͍ɻ વ
ᶅςετ༻σʔλ͕ਏ͍
݁ߏਏ͍…ʁ
Ͱɺπʔϧͷ͍ํ͕Θ͔Ε ·ͩਏ͘ͳ͍ʂʢଟʁʣ
ͭΒΈͷରॲ
ᶃ࣮ߦ࣌ͷڥͰςετ݁Ռ͕มΘΔ w 1VQQFUFFSͰޮՌతͩͬͨ͜ͱ w ϘλϯΫϦοΫલޙʹEFMBZΛ伵·ͤΔ w ϦΫΤετॲཧϖʔδભҠͷॲཧͷࡍ XBJU6OUJMʹzOFUXPSLJEMFz͔zOFUXPSLJEMFzΛࢦఆ͢Δ
ᶄςετ͕ڰ͍͍͢ ˠηϨΫλܥҰͭͷϑΝΠϧʹవΊͯҰݩཧ ࢀߟ2JJUB&&ςετͷಋೖ͔ΒֶΜͩ͜ͱ IUUQTRJJUBDPNNUNJUFNTFEEGE
͔ͯ͠͠ɺͭΒ͘ͳ͍ʁʁ
࠷ޙʹݸਓతͳϑϩϯτςετͷॴײ w &&Γ࣮͢Δίετ͕ߴ͍ͱࢥͬͨɻ w ࠷ॳʹίπΛ௫Ή·Ͱ͕ଟগਏ͍ w όοΫͷมߋ͚ͩͰͳ͘ɺϑϩϯτͷมߋςετΛյ͢ɻ ཁ͢Δʹϝϯςφϯείετ͕ߴ͍ɻ w ࠷ॳଞͷςετΛݕ౼ͨ͠΄͏͕ྑ͍͔ʁ
w Ϣχοτςετɺεφοϓγϣοτςετɺ"1*ͷΈςετFUD w ɺςετର͕ҧ͏ͨΊҰ֓ʹݴ͑ͳ͍͕ɻɻ
͝ਗ਼ௌɺຊʹ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ
ࢀߟɾग़యͳͲ GoogleChrome/puppeteer https://github.com/GoogleChrome/puppeteer facebook/jest https://github.com/facebook/jest 2JJUB&&ςετͷಋೖ͔ΒֶΜͩ͜ͱ IUUQTRJJUBDPNNUNJUFNTFEEGE &OEUP&OEUFTUJOH3FBDUBQQTXJUI1VQQFUFFSBOE+FTU-PH3PDLFU IUUQTCMPHMPHSPDLFUDPNFOEUPFOEUFTUJOHSFBDUBQQTXJUIQVQQFUFFSBOEKFTU DFGCGE