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
僕の考えた最強のテスト駆動開発
Search
solt9029
June 30, 2022
0
3.5k
僕の考えた最強のテスト駆動開発
#cookpad_tech_kitchen 第27回で発表しました。
solt9029
June 30, 2022
Tweet
Share
More Decks by solt9029
See All by solt9029
JSON Schema で複雑な仕様の入力フォームの実装に立ち向かった話
solt9029
11
5.5k
つくった展2019 エアー乾杯
solt9029
0
94
第181回HCI研究会 リニアメニューにおける開閉ボタンの位置が探索に与える影響
solt9029
0
57
ABPro2018 ステアリングの達人
solt9029
0
45
WISS2017 大部分の空間的一貫性を保つアイコン整列手法の提案
solt9029
0
75
インタラクション2017 MouseTutor: マウスに手を動かされるチュートリアル
solt9029
0
64
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Embracing the Ebb and Flow
colly
84
4.5k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Code Reviewing Like a Champion
maltzj
520
39k
Gamification - CAS2011
davidbonilla
80
5.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Facilitating Awesome Meetings
lara
50
6.1k
4 Signs Your Business is Dying
shpigford
181
21k
Code Review Best Practice
trishagee
65
17k
Practical Orchestrator
shlominoach
186
10k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
450
Transcript
࠷ۙ࡞ͬͨͷհ ΫοΫύουגࣜձࣾ Ԙग़ݚ࢙ !TPMU $PPLQBE 5FDI,JUDIFO 1
• ॴଐɿ ΫοΫύουגࣜձࣾ ങϓϩμΫτ։ൃ෦ • ීஈ͏ٕज़ɿ 3BJMT3FBDU)41 1SPDFTTJOH •
ۀྖҬɿ ൢചऀ͚ϓϩμΫτ &$ΞϓϦͷ"1*ͷ։ൃ • झຯɿ ͷͮ͘Γʢࢼ࡞͕ϝΠϯʣ • 5XJUUFS!TPMU ࣗݾհ 2
ࠓ·Ͱ࡞ͬͨͷ ΰϛϑΝΠϧΛཷΊࠐΜͰ͠·͏ํͷͨΊͷσεΫτοϓ্Ͱಈ͘ϧϯό 3
ࠓ·Ͱ࡞ͬͨͷ ҿञTVEPΛࢭ͢ΔγεςϜ 4
ࠓ·Ͱ࡞ͬͨͷ ολʔϯʂͰୡײΛ͓ॕ͍ͯ͘͠ΕΔ&OUFSΩʔ 5
ࠓ·Ͱ࡞ͬͨͷ ॆిέʔϒϧΛඥʹݟཱͯͨΫϥοΧʔΞϓϦ🎉 6
ࠓ·Ͱ࡞ͬͨͷ ॆిέʔϒϧΛඥʹݟཱͯͨΫϥοΧʔΞϓϦ🎉 7
ҰԠٕज़ܥͷษڧձͳΜͩΑͳ🤔 ࠓճͷൃදͲ͏͠Α͏ 8
ͷߟ͑ͨ ࠷ڧͷςετۦಈ։ൃ ͱ͍͏λΠτϧͰൃද͠·͢ 9
ςετۦಈ։ൃͱ • ςετϑΝʔετͳ։ൃख๏ • ࣮લʹςετΛॻ͖ɺςετʹ߹͏Α͏ʹ࣮ • ༷ɾཁ݅Λ໌֬ʹ͔ͯ͠Βɺ·ͣಈ͘ίʔυΛॻ͖ɺߋʹ ϦϑΝΫλϦϯά͢Δͱ͍͏αΠΫϧͰண࣮ʹ։ൃ 10
ςετۦಈ։ൃͷϝϦοτ • ޙఔόάΛ࣋ͪӽ͠ʹ͍͘ • γεςϜͷཁ݅ΛΑΓਂ͘ཧղͰ͖Δ • ։ൃऀ͕҆৺ͯ͠ίʔσΟϯάͰ͖ɺ৺ཧతෛ୲͕ݮΔ 2CPPL ςετۦಈ։ൃʢ5%%ʣͱʁ5%%ͷਐΊํΛεςοϓຖʹղઆʂ ΑΓҾ༻
IUUQTXXXRCPPLKQDPMVNO@IUNM 11
ςετۦಈ։ൃͷϝϦοτ • ޙఔόάΛ࣋ͪӽ͠ʹ͍͘ • γεςϜͷཁ݅ΛΑΓਂ͘ཧղͰ͖Δ • ։ൃऀ͕҆৺ͯ͠ίʔσΟϯάͰ͖ɺ৺ཧతෛ୲͕ݮΔ 2CPPL ςετۦಈ։ൃʢ5%%ʣͱʁ5%%ͷਐΊํΛεςοϓຖʹղઆʂ ΑΓҾ༻
IUUQTXXXRCPPLKQDPMVNO@IUNM ςετʹΑͬͯ։ൃऀͷମݧΛେ͖͘มԽ 12
ςετͷ࣮ߦɾ݁ՌΛݟΔͷָ͕͍͠ • ͳ͔ͳ͔௨Βͳ͍ςετ͕͋Δͱɺࠓͦ͜ޭ͢Δ͔ʂʁ ͍͚Δ͔ʂʁΈ͍ͨͳؾ࣋ͪʹͳΔ • ͣͬͱςετམͱͣ͞ʹ։ൃͯ͠ΔͱɺʮԶఱ࠽͔ʁʯͱ ಾͷࣗ৴͕ੜ·Εͯ͘Δͱಉ࣌ʹɺςετΛͣͬͱམͱͣ͞ʹ ։ൃ͍ͨ͠ͱ͍͏ઓҙ͕ࣝժੜ͑Δ • ࣮ߦޙʹςετέʔεͷ͕ݟΒΕͯॆ࣮ײ͕͋Δ
13
͋Δࢥͬͨ͜ͱ 14
ςετԻήʔͩʂ ͋Δࢥͬͨ͜ͱ 15
ςετͷ࣮ߦɾ݁ՌΛݟΔͷָ͕͍͠ • ͳ͔ͳ͔௨Βͳ͍ςετ͕͋Δͱɺࠓͦ͜ޭ͢Δ͔ʂʁ ͍͚Δ͔ʂʁΈ͍ͨͳؾ࣋ͪʹͳΔ ΊͬͪΌ࿅शͯ͠Δේ໘ͷՕॴ͕ྲྀΕΔͱ͖ʹ ϋϥϋϥυΩυΩ͠ͳ͕Β ԻήʔΛϓϨΠ͢Δͱ͖ͱಉ͡ؾ࣋ͪ 16
ςετͷ࣮ߦɾ݁ՌΛݟΔͷָ͕͍͠ • ͣͬͱςετམͱͣ͞ʹ։ൃͯ͠ΔͱɺʮԶఱ࠽͔ʁʯͱ ಾͷࣗ৴͕ੜ·Εͯ͘Δͱಉ࣌ʹɺςετΛͣͬͱམͱͣ͞ ʹ։ൃ͍ͨ͠ͱ͍͏ઓҙ͕ࣝժੜ͑Δ ϑϧίϯϘΛࢦ͍ͯ͠Δͱ͖ͱಉ͡ײ֮ 17
ςετͷ࣮ߦɾ݁ՌΛݟΔͷָ͕͍͠ • ࣮ߦޙʹςετέʔεͷ͕ݟΒΕͯॆ࣮ײ͕͋Δ ࠷େίϯϘͱ͔ݟͯχϠχϠ͍ͯ͠Δͷͱಉ͡ 18
ςετͷ࣮ߦɾ݁ՌΛݟΔͷָ͕͍͠ • ͳ͔ͳ͔௨Βͳ͍ςετ͕͋Δͱɺࠓͦ͜ޭ͢Δ͔ʂʁ ͍͚Δ͔ʂʁΈ͍ͨͳؾ࣋ͪʹͳΔ • ͣͬͱςετམͱͣ͞ʹ։ൃͯ͠ΔͱɺʮԶఱ࠽͔ʁʯͱ ಾͷࣗ৴͕ੜ·Εͯ͘Δͱಉ࣌ʹɺςετΛͣͬͱམͱͣ͞ʹ ։ൃ͍ͨ͠ͱ͍͏ઓҙ͕ࣝժੜ͑Δ • ࣮ߦޙʹςετέʔεͷ͕ݟΒΕͯॆ࣮ײ͕͋Δ
͜ͷʮָ͍͠ʯΛͬͱ৳ͯ͠ ։ൃऀͷମݧΛѹతʹվળ 19
ςετΛԻήʔ෩ʹ࣮ߦ ͯ͘͠ΕΔڥΛࡶʹ࡞ͬͨ ͦ͜Ͱʜ 20
%&.0 21
%&.0 22 https://www.youtube.com/watch?v=IUw4EqJQa0k
ͬͺΓςετԻήʔ • ίϯϘཁૉ͕͋Δʢউखʹ͋ΔͱࢥͬͯΔ͚ͩʣ • ςετέʔεʹΑ࣮ͬͯߦ͕࣌ؒҧ͏ͨΊɺϦζϜΛ࡞ΕΔ • Ҏ্ͷఆ͕ଘࡏ͢Δʢ TVDDFTTQFOEJOHGBJMVSFʣ • ී௨ͷԻήʔ0,͔/(͔ͷఆͰͳ͘ɺλΠϛϯάʹ
ʮͱͯ߹͍ͬͯͨʯʮͦͦ͜͜߹͍ͬͯͨʯʮ߹͍ͬͯͳ͔ͬͨʯ ͳͲͷҎ্ͷఆͰ͋Δ߹͕΄ͱΜͲ 23
࣮ • Իήʔ෦1SPDFTTJOHͰࡶʹ࡞ͬͨ • ࡶͳ࡞ΓͳͷͰɺSTQFDDPSFΛFWBM͠·ͬͨ͘ • STQFDDPSFͷFYBNQMF݁Ռ௨पΓͷ࣮Λ݁ߏݟͨ • ·͔͞STQFDDPSFͷ։ൃऀɺ͜ΜͳܗͰ࣮ΛݟΒΕΔͱࢥͬͯ ͍ͳ͍͔͠Εͳ͍
24
ࣗͰͬͯΈͨײ • ։ൃσόοάதʹ͍ͩͿ͖ͯ͠·ͬͨ • ςετʹରͯ͠ςϯγϣϯͷߴ͍ͱ͖͚ͩΦεεϝ 25
Ԙग़ݚ࢙ !TPMU ຖͷςετΛָ͠Έʹ͢Δ .BLFFWFSZEBZUFTUJOHGVO 26