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
まりも
September 25, 2024
0
16
大空を飛ぶ
技術的負債がたまった状態、例えばテストカバレッジが低い状態で開発を行うのは苦しいです。そのことを、取りにたとえて苦しさが想像しやすいように話してみました。
まりも
September 25, 2024
Tweet
Share
More Decks by まりも
See All by まりも
メンタルモデルから見るオブジェクト設計
hrmstrsmgs
0
230
技術的負債
hrmstrsmgs
0
250
よい設計のプログラムを作るには
hrmstrsmgs
0
83
歴史から理解するJavaScript
hrmstrsmgs
0
69
論理的な考え方
hrmstrsmgs
0
64
論理的な話し合いはなぜ必要か
hrmstrsmgs
0
39
腕のある技術者はなぜ
hrmstrsmgs
0
85
疑似乱数の生成
hrmstrsmgs
0
45
構造化プログラミング
hrmstrsmgs
0
160
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
290
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
260
The Curious Case for Waylosing
cassininazir
0
240
We Have a Design System, Now What?
morganepeng
54
8k
Speed Design
sergeychernyshev
33
1.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
150
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Context Engineering - Making Every Token Count
addyosmani
9
660
The Invisible Side of Design
smashingmag
302
51k
Transcript
大空を飛ぶ TDDの導入についてのメタファ
たとえ話をします。
空気の汚れた地域ですが、 上空はまだきれいです。
上空を飛べば、 気持ちよく飛べます。
一度下に向かうと、 戻るのに苦労します。 ここが大変
下のほうを飛ぶと、 ずっと大変です。
下から上に上がろうとしても、 なかなか上がれません。 すごく大変
力尽きて、 結局上がれないかもしれません。
いっそ本当に力尽きるかも。
TDD導入のたとえ話です。
カバレッジが高い カバレッジが低い
うまく自動テストを書くために必要なこと コードの品質 可読性 拡張性 疎結合 テスタビリティ テストコードの品質 テストカバレッジ 可読性 拡張性
カバレッジだけじゃ ないです
途中からの導入が難しい理由 テストを後から書く 自動化を利用できるのは最後だけ 手間が減らない
途中からの導入が難しい理由 テストを後から書く とても面倒
途中からの導入が難しい理由 テストがないとリ ファクタリングがや りにくい リファクタリングし てないとテストが書 きにくい
途中からの導入が難しい理由 自動テストを書くのに 必要なコードの品質 疎結合 可読性 テスタビリティ
途中からの導入が難しい理由 自動テストを書くのに必 要な自動テストの品質 疎結合 可読性 拡張性
最初からTDDを使って自動テストを実装した場合
途中から自動テストを導入しようとした場合 すごく大変
途中から自動テストを導入しようとした場合
途中から自動テストを導入しようとした場合
結論 TDDは最初から導入しましょう せめて新コンポーネントを導入したタイミングで導入 新機能はなるべくTDDで