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
新卒一年目が大規模WebアプリのE2Eテストに挑戦した話
Search
sugoikondo 近藤 豊峰
September 22, 2018
Technology
0
230
新卒一年目が大規模WebアプリのE2Eテストに挑戦した話
2018/09/22 Jser.info 使用スライド
sugoikondo 近藤 豊峰
September 22, 2018
Tweet
Share
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
280
OpenAI Embedding API を活用して、 高度なレコメンド機能を実装した話 - A story about implementing an advanced recommendation function using the OpenAI Embedding API
sugoikondo
0
260
Other Decks in Technology
See All in Technology
20241220_S3 tablesの使い方を検証してみた
handy
3
250
5分でわかるDuckDB
chanyou0311
10
3.2k
NW-JAWS #14 re:Invent 2024(予選落ち含)で 発表された推しアップデートについて
nagisa53
0
250
私なりのAIのご紹介 [2024年版]
qt_luigi
1
120
re:Invent 2024 Innovation Talks(NET201)で語られた大切なこと
shotashiratori
0
300
非機能品質を作り込むための実践アーキテクチャ
knih
3
740
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
420
Amazon SageMaker Unified Studio(Preview)、Lakehouse と Amazon S3 Tables
ishikawa_satoru
0
150
Wvlet: A New Flow-Style Query Language For Functional Data Modeling and Interactive Data Analysis - Trino Summit 2024
xerial
1
110
マイクロサービスにおける容易なトランザクション管理に向けて
scalar
0
110
GitHub Copilot のテクニック集/GitHub Copilot Techniques
rayuron
24
11k
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
280
Featured
See All Featured
A Philosophy of Restraint
colly
203
16k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Optimising Largest Contentful Paint
csswizardry
33
3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
GitHub's CSS Performance
jonrohan
1030
460k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
111
49k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Unsuck your backbone
ammeep
669
57k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
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