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
頑張りすぎないVue.js単体テストのススメ / Vue.js unit testing th...
Search
Kosuke Yamashita
October 24, 2019
Programming
1
540
頑張りすぎないVue.js単体テストのススメ / Vue.js unit testing that does not work too hard
2019/10/24 STORES.jp Meetup for Front-end Engineers #1で発表した内容です。
Kosuke Yamashita
October 24, 2019
Tweet
Share
More Decks by Kosuke Yamashita
See All by Kosuke Yamashita
STORESにおけるアクセシビリティ向上の取り組み
kskymst
0
50
事業成長を加速させるフロントエンド改善のお話
kskymst
7
5.8k
Other Decks in Programming
See All in Programming
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1.1k
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
240
DevNexus - Create AI Infused Java Apps with LangChain4j
kdubois
0
120
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
1.2k
pylint custom ruleで始めるレビュー自動化
shogoujiie
0
160
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
940
バッチを作らなきゃとなったときに考えること
irof
2
550
sappoRo.R #12 初心者セッション
kosugitti
0
280
PEPCは何を変えようとしていたのか
ken7253
3
300
Better Code Design in PHP
afilina
0
180
生成AIで加速するテスト実装 - ロリポップ for Gamersの事例と 生成AIエディタの活用
kinosuke01
0
130
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
7
4.2k
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Six Lessons from altMBA
skipperchong
27
3.6k
Done Done
chrislema
182
16k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
A designer walks into a library…
pauljervisheath
205
24k
Practical Orchestrator
shlominoach
186
10k
Transcript
,PTVLF:BNBTIJUB 4503&4KQ JODIFZ JOD 4503&4KQ.FFUVQGPS'SPOUFOE&OHJOFFST ؤுΓ͗͢ͳ͍7VFKT୯ମςετͷεεϝ
ࣗݾհ ɾࢁԼޭհ ɾ4503&4KQ6*վળνʔϜ ɾ݄ೖࣾ ɾલ৬ϕτφϜͷελʔτΞοϓ ɹͰ3FBDUϝΠϯ !LTLZNTU
୯ମςετॻ͍ͯ·͔͢ʁ
ετΞσβΠϯ ϦϒϥϯσΟϯά ՝ۚϖʔδ ૿੫ରԠ ׂൢ๏ରԠ 6*$PNQPOFOU ΞΠςϜ࡞ฤू ݄ ݱࡏ
5FTUJOH4UBSU Ҡߦ։࢝ ˞1+Ұ෦ൈਮ
֤ݸਓؤுͬͯਐΊ͍͕ͯͨɻɻ ςετํΛܾΊͯޮՌతͳςετΛ ؤுΓ͗ͣ͢ॻ͖͍ͨ ςετཻͷෆἧ͍ͭɺޮՌతͰͳ͍ςετ ɾϦιʔεͷফ ɾϝϯςφϯείετ ɾεϓϦϯτ௨Γʹਐ·ͳ͍JTTVF ɾਫ਼ਆతͳਏΈ ! "
ͦ͜Ͱࠓ4503&4͕ςετͱ ͖߹ͬͨ݁Ռʹ͍͓ͭͯ͠·͢
˞ิ
4503&4KQͰओʹͭͷϦϙδτϦͰ /VYUº+FTUΛத৺ʹςετڥΛߏங .BJO 6*$PNQPOFOU-JCSBSZ
/VYU WVFUFTUVUJMT º+FTUͰͷ͓͕ϝΠϯ .BJO 6*$PNQPOFOU-JCSBSZ
"HFOEB తΛܾΊΔʢXIZʣ ςετରΛܾΊΔʢXIBUʣ Ͳ͏ςετ͢Δͷ͔ IPX ͜Ε͔Β
"HFOEB తΛܾΊΔʢXIZʣ ςετରΛܾΊΔʢXIBUʣ Ͳ͏ςετ͢Δͷ͔ IPX ͜Ε͔Β
ςετΛॻ͘త ɾਫ਼ਆత҆ఆ ɾखಈςετͷίετͷݮ ɾϦϑΝΫλϦϯά࣌ͷΤϯόάΛݮΒ͢ ɾίϯϙʔωϯτͷ༷ॻతׂ
"HFOEB తΛܾΊΔʢXIZʣ ςετରΛܾΊΔʢXIBUʣ Ͳ͏ςετ͢Δͷ͔ IPX ͜Ε͔Β
ςετର ɾQBHFT ⚪1$ ⚪41 ɾDPNQPOFOUT ⚪NJYJO ⚪DPOUBJOFS ⚪QSFTFOUBUJPOBM ɾMBZPVUT ɾTUPSF
ɾVUJMT ɾDPOTUBOUT ɾQMVHJOT ɾNJEEMFXBSF
ςετ༰ ɾNPVOU ɾQSPQT ɾDPNQVUFE ɾNFUIPET ⚪FNJU ⚪IUUQ3FRVFTU ɾUFNQMBUF ⚪TMPU ⚪WJGWTIPX
⚪WPO ⚪WCJOEDMBTT ⚪WCJOEBUUS ɾMJGFDZDMF ɾNJYJO ɾBTZOD%BUBGFUDI ɾHFUUFST ɾNVUBUJPOT ɾBDUJPOT
ൣғ͍ !
ޮՌతɺޮՌͷബ͍ςετΛఆٛͯ͠ ॻ͘ɺॻ͔ͳ͍Λ໌֬ʹ͢Δ !
ޮՌͷബ͍ςετ ɾॳظදࣔঢ়ଶ ɾQSPQTͷఆٛ ɾ୯७ͳϩδοΫ FUD ෳࡶͷ͍ϩδοΫ ॻ͔ͳ͍બΛͨ͠ !
ॳظදࣔঢ়ଶ QSPQTͷUFNQMBUFදࣔͷΈ
QSPQTͷఆٛ QSPQTఆٛʹରͯ͠ͷςετ
୯७ͳϩδοΫFYNVUBUJPOT ୯७ͳTUBUFมߋͷNVUBUJPO ͦͷଞFNJUΛൃՐ͢Δ͚ͩͷNFUIPETͳͲ
ޮՌతͳςετ ɾυϝΠϯͰͷίΞͳϩδοΫ ɾذͷೖΔϩδοΫ ෳࡶͷߴ͍ϩδοΫ ͔ͬ͠Γͱ͑Δ !
υϝΠϯͰͷίΞͳ߲Λఆٛ͢Δ
ྫ͑͜͏͍ͬͨ ༗ྉձһొϑΥʔϜͷ߹ ίΞͳςετ߲Λఆٛ
༗ྉձһొϑΥʔϜ ͷ߹ ᶃ ᶄ ᶆ ᶅ ᶄֹ͕ۚਖ਼͘͠දࣔ͞Ε͍ͯΔࣄ ᶃʮ͓ࢧํ๏ʯʹΑͬͯ ϑΥʔϜ༰͕มΘΔࣄ ᶅόϦσʔγϣϯ͕ਖ਼͘͠ಈ࡞ɺ
දࣔ͞ΕΔࣄ ᶆϑΥʔϜͷೖྗ༰Ͱ"1*͕ ୟ͔ΕΔࣄ
ذͷೖΔϩδοΫ ಛఆ݅ɺΠϕϯτʹΑͬͯڍಈ͕ มΘΓόάʹͳΓ͍͢
"HFOEB తΛܾΊΔʢXIZʣ ςετରΛܾΊΔʢXIBUʣ Ͳ͏ςετ͢Δͷ͔ IPX ͜Ε͔Β
Ͳ͏ςετ͢Δͷ͔ ɾQBHFTͰͷ౷߹ςετ ɾTUPSFGBDUPSZؔͰڞ௨Խ ʜFUD ಉΫϥεςετɺڥքςετͷΑ͏ͳςετٕ๏ ͪΖΜͰ͕͢ɺͬͱ7VFº+FTUଆͷ
QBHFTͰͷ౷߹ςετ QBHFT͔ΒNPVOUͰ౷߹ςετ σʔλͷྲྀΕΛ͔ͬ͠Γ௨͍ͬͯΔ͔νΣοΫ ˞ଞίϯϙʔωϯτجຊతʹTIBMMPX.PVOUͰΛด͡ࠐΊΔ 1BSFOU $IJME (SBOEDIJME mount
ͦͷࡍXBSOJOHͰGBJMʹ͢Δ jestSetup.js XBSOJOH͕ग़͘͢ɺग़ͯςετࣗମ௨ͬͯ͠·͏ҝ XBSOJOHͰGBJM͢Δ༷ʹ͓ͯ͘͠ͱΑΓָͰ҆৺ jest.config.js
TUPSFGBDUPSZؔͰڞ௨Խ ڞ௨Խ͢Δ͜ͱͰେ෯ʹָʹ
͜ͷଞʹ·ͩ·ͩ͋Δ !EFYJB͕ࣾ2JJUBʹ߲ͷ σβΠϯύλʔϯɺΞϯνύλʔϯ Λ·ͱΊͯ͘Ε͍ͯΔ ࣮࣌ͷ໎͍͕ফ͑ϨϏϡϫʔ ͱڞ௨ݴޠͰձͰ͖ΔΑ͏ʹ ͳΔ ৄ͍͠༰·ͨͲ͔͜ͰͤͨΒ !
"HFOEB తΛܾΊΔʢXIZʣ ςετରΛܾΊΔʢXIBUʣ Ͳ͏ςετ͢Δͷ͔ IPX ͜Ε͔Β
͜Ε͔Β WJGͳͲͷදࣔذʹؔͯ͠&&ಋೖͳͲ ࢼͯ͠Έ͍ͨɺྑͦ͞͏Ͱ͋Ε୯ମςετ ͷ༰Λ&&دͤΒΕΔͷͰͳ͍͔ʁ ͳΜͯΛ͍ͯ͠·͢
ؤுΓ͗ͣ͢ϝϯς͍͢͠ ςετΛ͜Ε͔Βࢦ͍ͯ͘͠ !
None
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ !
IUUQTIFZKQFWFOUTIFMMPIFZ ୈೋɾୈ࢛༵ʙ