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
TDDワイワイ会
Search
Shuhei TAKASUGI
May 19, 2019
Programming
1
5k
TDDワイワイ会
TDDワイワイ会で使っている資料です。
https://tddyyx.connpass.com/
Shuhei TAKASUGI
May 19, 2019
Tweet
Share
More Decks by Shuhei TAKASUGI
See All by Shuhei TAKASUGI
TDDワイワイ会inXP祭り2018
shuyuhey
1
2.3k
Other Decks in Programming
See All in Programming
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
430
KagglerがMixSeekを触ってみた
morim
0
330
20260313 - Grafana & Friends Taipei #1 - Kubernetes v1.36 的開發雜記:那些困在 Alpha 加護病房太久的 Metrics
tico88612
0
240
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
200
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
420
Everything Claude Code OSS詳細 — 5層構造の中身と導入方法
targe
0
150
Claude Codeログ基盤の構築
giginet
PRO
7
3.7k
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
560
GoのDB アクセスにおける 「型安全」と「柔軟性」の両立 - Bob という選択肢
tak848
0
280
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
130
Geminiをパートナーに神社DXシステムを個人開発した話(いなめぐDX 開発振り返り)
fujiba
0
110
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
240
Featured
See All Featured
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
HDC tutorial
michielstock
1
590
It's Worth the Effort
3n
188
29k
Designing for humans not robots
tammielis
254
26k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Paper Plane (Part 1)
katiecoart
PRO
0
6k
The untapped power of vector embeddings
frankvandijk
2
1.6k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
850
Docker and Python
trallard
47
3.8k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
310
The browser strikes back
jonoalderson
0
850
The Language of Interfaces
destraynor
162
26k
Transcript
5%%ϫΠϫΠձ
5%%ϫΠϫΠձͱ w5%%ͱϞϒϓϩάϥϛϯάͷΓํΛ ମݧ͢ΔͰ͢ wզʑʮےτϨʯͱݺͿ͜ͱ͕ଟ͍Ͱ͢
֬ೝࣄ߲ ˞Ϟϒϓϩάϥϛϯάͷ༷ࢠΛ ࡱӨ͢Δ͜ͱ͕͋Γ·͢ ࣸΓͨ͘ͳ͍ํɺෆ߹ͷ͋Δํ ༧Ί͓͑Լ͍͞
4/4 wϋογϡλά͋Γ·͢ʂ #tddyyχ ͜ΕΤοΫεͰͳ͘ΧΠͰ͢
λΠϜϥΠϯ wdΠϯτϩࣗݾհνʔϜ͚ wdΏΔΏΔͱϞϒϓϩάϥϛϯά wdதؒ;Γ͔͑Γ wdΏΔΏΔͱϞϒϓϩάϥϛϯά wd;Γ͔͑Γ
5%%ͱ Ϟϒϓϩάϥϛϯά
ςετۦಈ։ൃ w ʮಈ࡞͢Δ͖Ε͍ͳίʔυʯ 3PO+F⒎SJFT ͕ΰʔϧ έϯτɾϕοΫஶ ʢ৽༁ʣΦʔϜࣾ
ݪஶ ͖Ε͍ Ԛ͍ ಈ࡞͠ͳ͍ ಈ࡞͢Δ
ςετۦಈ։ൃ w ιϑτΣΞ։ൃʹ͓͚Δෆ҆Λ؇͠ ͍ͨ w z։ൃzʹͪΖΜzઃܭzؚΜͰ͍Δ w lઃܭzίʔσΟϯάʹΑͬͯͳ͞ΕΔ w গͣͭ͠ઃܭ͠ͳ͕Β࡞ΓࠐΉ
έϯτɾϕοΫஶ ʢ৽༁ʣΦʔϜࣾ ݪஶ
ςετۦಈ։ൃ wςετϑΝʔετͷ Ξϓϩʔν w ςετΛॻ͘ʢϨουʣ w ࣮͢ΔʢάϦʔϯʣ w ͖Ε͍ʹ͢Δ ʢϦϑΝΫλϦϯάʣ
έϯτɾϕοΫஶ ʢ৽༁ʣΦʔϜࣾ ݪஶ
ςετۦಈ։ൃ w Ϩουɿ ಈ࡞͠ͳ͍ɺ͓ͦΒ͘࠷ॳͷ͏ͪ ίϯύΠϧ௨Βͳ͍ςετΛͭॻ͘ w άϦʔϯɿ ͦͷςετΛਝʹಈ࡞ͤ͞Δɻͱ͖ʹ ΠϯνΩͰ͚ͬͭͰ͍͍ w
ϦϑΝΫλϦϯάɿ ςετ͕ύεͨ͠··ͷঢ়ଶͰ ॏෳΛআڈͨ͠ΓίʔυΛ͖Ε͍ʹ͢Δ έϯτɾϕοΫஶ ʢ৽༁ʣΦʔϜࣾ ݪஶ
ςετۦಈ։ൃ w ϨουɾάϦʔϯɾϦϑΝΫλϦϯάΛ ܁Γฦ͠ΠϯΫϦϝϯλϧʹ ઃܭɾ࣮͍ͯ͘͠ ͖Ε͍ Ԛ͍ ಈ࡞͠ͳ͍
ಈ࡞͢Δ Ϩου άϦʔϯ ϦϑΝΫλϦϯά έϯτɾϕοΫஶ ʢ৽༁ʣΦʔϜࣾ ݪஶ
5%%ϫΠϫΠձͰͷ5%% w 6ODMF#PC 3PCFSU.BSUJO ʹΑΔͭͷϧʔϧʹै͏ ࣦഊ͢ΔϢχοτςετΛύε͢ΔͨΊ͚ͩʹ͔͠ ϓϩμΫγϣϯίʔυΛॻ͍ͯͳΒͳ͍ɻ ࣦഊͤ͞ΔͷʹेͳϢχοτςετ͕ॻ͚ͨΒ
ͦΕҎ্ςετίʔυΛॻ͍ͯͳΒͳ͍ɻ ίϯύΠϧΤϥʔࣦഊͱΈͳ͢ɻ ͭͷϢχοτςετΛύεͤ͞Δͷʹेͳίʔυ͕ॻ ͚ͨΒͦΕҎ্ϓϩμΫγϣϯίʔυΛॻ͍ͯͳΒͳ ͍ɻ “The Three Laws of TDD” http://butunclebob.com/ArticleS.UncleBob.TheThreeRulesOfTdd
େࣄʹ͍ͯ͠Δ͜ͱ w ;Δ·͍ͷ۩ମྫʹΑ༷ͬͯΛఆΊ͍ͯ͘ w ࣮͔Βߟ͑ͳ͍ʢ5FTU'JSTUʣ w 4UFQCZTUFQʢҰඈͼʹߟ͑ͳ͍ʣ w Ϩουʢςετ͕ࣦഊ͍ͯ͠Δঢ়ଶʣૣ͘ൈ͚Δ w
άϦʔϯʢςετ͕ಈ࡞Λอূ͍ͯ͠Δঢ়ଶʣ҆৺
Ϟϒϓϩάϥϛϯάͱ IUUQTTQFBLFSEFDLDPNUBLBLJOHNPCQSPHSBNNJOHTUBSUVQNBOVBMOVNCFSNPCQSPHSBNNJOH OVNCFSNPCVQVSP !5",",*/( .0#130(3"..*/( 45"3561."/6"- Ϟϒϓϩάϥϛϯά ελʔτΞοϓϚχϡΞϧ
!5",",*/(
Ϟϒϓϩάϥϛϯά wෳ໊ͰͷίϯϐϡʔλΛ͍ɺدͬͯͨ ͔ͬͯͭͷ͓ʹઓ͢ΔϓϥΫςΟε w υϥΠόʔʢਓʣɿߟ͑Λද໌͠ͳ͕ΒखΛಈ͔ͯ͠ ίʔυΛॻ͘ɻ w φϏήʔλʔʢෳʣɿखΛಈ͔͞ͳ͍͕ҰॹʹίʔυΛ ॻ͘ɻόάΛࠐ·ͳ͍Α͏ʹҙͨ͠Γɺ͖᪴Λॿ͚ ͨΓɺઌճΓͯ͠ௐͨΓ͢Δɻ
wਓ̍ͰΔͷϖΞϓϩάϥϛϯάͱݴ͏
5%%ϫΠϫΠձͰͷ͓ଋ wυϥΠόʔ w ͬͯΔ͜ͱɺ͜Ε͔ΒΔ͜ͱΛʹग़͢ɻ wφϏήʔλʔ w ͜Ε͔ΒΔ͜ͱΛܾఆ͢ΔɻυϥΠόͷΔ͜ͱͷ ํੑ͕ؒҧ͍ͬͯͦ͏ͳ߹मਖ਼Λɺ͍͋ͬͯͦ͏ ͳ߹ಉҙΛ͢Δɻ
5%%ϫΠϫΠձͰͷ Ϟϒަํࣜ w5%%ͷαΠΫϧͰϨου ʹͳͬͨΒަ͢Δ ςετΛ௨ͨ͢Ίͷ࣮Λ ͢ΔʢlάϦʔϯʹ͢Δzʣ ʢάϦʔϯͷ··ʣϦϑΝ ΫλϦϯάΛ͢Δ
࣍ʹ࣮͢Δ༷Λςετ Ͱදݱ͢ΔʢzϨουʹ͢ Δzʣ ͖Ε͍ Ԛ͍ ಈ࡞͠ͳ͍ ಈ࡞͢Δ ᶅ ᶃ ᶄ
5%%ϫΠϫΠձͷ ඞউύλʔϯ wDZCFSEPKPPSHΛ͏ w ແྉͷ8FC3&1- w ͍ΖΜͳݴޠڥ͕͋Δ w ςετϑϨʔϜϫʔΫ͕σϑΥϧτͰଘࡏ w໎ͬͨΒ'J[[#V[[
w ༷͕ཧղ༰қ w ͙࣌ؒΒ͍Ͱͬ͘͡ΓΔͷʹͪΐ͏Ͳ ͍͍ wഎ৳ͼ͢ΔΦεεϝͷΈ߹Θͤ w ͬͯΔ͓ºΒͳ͍ݴޠ w Βͳ͍͓ºͬͯΔݴޠ IUUQXXXDZCFSEPKPPSH