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をやってみたら、身に沁みてTDDの 〝良さ〟 を理解した話
Search
ふわり
November 12, 2024
Programming
42
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
TDDをやってみたら、身に沁みてTDDの 〝良さ〟 を理解した話
2024/11/12に開催された「つどえ!3社合同ハロウィンアフターパーティー!」のLTで発表した資料です。
・ピクシブ株式会社
・ディップ株式会社
・株式会社ウィルゲート
ふわり
November 12, 2024
More Decks by ふわり
See All by ふわり
ChatGPT、Gemini、Claude は、なぜ似たようなUIを採用しているのか?
fuwarisprit
3
2.5k
ところでクリーンアーキテクチャって何がいいの?
fuwarisprit
0
22
Other Decks in Programming
See All in Programming
Contextとはなにか
chiroruxx
1
370
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
400
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
940
1B+ /day規模のログを管理する技術
broadleaf
0
110
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
14
5.8k
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
180
はてなアカウント基盤 State of the Union
cockscomb
1
770
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
360
Lessons from Spec-Driven Development
simas
PRO
0
220
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
210
AI 輔助遺留系統現代化的經驗分享
jame2408
1
1k
RTSPクライアントを自作してみた話
simotin13
0
630
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
260
Statistics for Hackers
jakevdp
799
230k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Bash Introduction
62gerente
615
220k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
180
From π to Pie charts
rasagy
0
220
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.7k
Raft: Consensus for Rubyists
vanstee
141
7.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Transcript
TDDをやってみたら、 身に沁みてTDDの 〝良さ〟 を理解した話
自己紹介 株式会社ウィルゲート プロダクト事業部開発グループ ソリューション開発ユニット 武田 佑樹 @Fuwari_WE - バックエンド中心にいくつかのプロダクトを 行ったり来たりしてる人
- 趣味でコミュニティ運営しながら TRPGをやってる人 - 毎月ネイルや髪色が変わる人 ※ おやすみちゅう…… ふわりって呼んでね>
みなさん テスト 書いてますか?
そのテスト いつ 書いてますか?
ふわりは はじめ に書いてます!
お話する範囲 テスト駆動開発のメリット テスト駆動開発の詳細 テスト駆動開発の実例
テスト駆動開発(TDD)ってなんだ
テスト駆動開発(TDD)ってなんだ? 出展: テスト駆動開発(TDD)とは?目的やメリット・デメリット、やり方を解説 https://service.shiftinc.jp/column/4654/
テスト駆動開発(TDD)ってなんだ? 出展: テスト駆動開発(TDD)とは?目的やメリット・デメリット、やり方を解説 https://service.shiftinc.jp/column/4654/ テストを書いて から実装する
テストを書いてから実装すると〝良い〟
テストを書いてから実装すると〝良い〟 - 安心してコードを書くことができる - 設計に早期に立ち返ることができる - ついでにレビュワーにも優しい 他にもある!
テストを書いてから実装すると〝良い〟 - 安心してコードを書くことができる - 設計に早期に立ち返ることができる - ついでにレビュワーにも優しい 他にもある!
安心してコードを書くことができる
安心してコードを書くことができる 仕様満たせてるかな? バグってないかな? キレイにしたいけど その後がなぁ… 他の機能に影響出てないかな?
安心してコードを書くことができる 仕様満たせてるかな? キレイにしたいけど その後がなぁ… 他の機能に影響出てないかな? バグってないかな? テスト通ってるし、大丈夫だな
テストを書いてから実装すると〝良い〟 - 安心してコードを書くことができる - 設計に早期に立ち返ることができる - ついでにレビュワーにも優しい 他にもある!
設計に早期に立ち返ることができる
設計に早期に立ち返ることができる このクラスのテスト書きづらいな~
設計に早期に立ち返ることができる このクラスのテスト書きづらいな~ そもそも設計が悪いかもしれない!
テストを書いてから実装すると〝良い〟 - 安心してコードを書くことができる - 設計に早期に立ち返ることができる - ついでにレビュワーにも優しい 他にもある!
ついでにレビュワーにも優しい
ついでにレビュワーにも優しい 変更量が 多すぎる 具体的な仕様が わかりづらい コミットの粒度が 適切でない ご出演頂いている読みづらいPRさん御一行
ついでにレビュワーにも優しい 変更量が 多すぎる 具体的な仕様が わかりづらい コミットの粒度が 適切でない ご出演頂いている読みづらいPRさん御一行 良い設計で解決! テストコードで解決!
テストの単位で解決!
まとめ
最初にテスト を書いておけば、 以降の開発フローを 安心して進めることができる
おわり