簡単なTDDの難しさ
2025/09/22

TDD(テスト駆動開発)について知識が無い人に、TDDを説明する機会がありました。
レッド・グリーン・リファクタリングを説明して、実際の進め方もデモのように見せながら説明したのですが、TDDのテスト対象とする副作用のない純粋な機能を特定するということが、一番の壁となっていることがわかりました。
私が普段実践しているTDDは、純粋な概念を特定して、その概念をクラスとして実装する過程をTDDで実装するというものです。モック等を使うようなタイプのテストではないです。モック等を使わないテストというのは非常に簡単に書けるので入門には適しているのですが、「純粋な概念を特定する」というところは、誰でもすぐできる類いのものではないのかもしれません。少なくとも以下を経験的に理解していないと、「TDDのテスト対象とする副作用のない純粋な機能を特定する」ということが難しくなりそうです。
- 副作用という概念を理解している。
- 技術詳細(htmlとかデータベースとかファイルとか)を除外して機能を説明できるくらいに、解像度が高い状態で仕様を理解している。
- 技術詳細について理解している。
簡単にTDDを実践するために、ドメイン駆動設計でドメインを純粋な形で定義できるくらいの理解力が必要になっていると言えるのではないでしょうか?
開発を簡単にするために有効なTDDは、実際私も恩恵を受けています。しかし、説明する機会があったことで、考えなおしてみると導入が困難な難しさを含んでいて、「簡単」と言っていいのだろうか。と思ったメモでした。
13件のピンバック
doxycycline mono 100mg
rifampin medication
cenforce 200 pillen
cialis online canada
cyclosporine potassium levels
vardenafil reviews
minoxidil gummies
metronidazole why no alcohol
minoxidil pills walgreens
acyclovir max dose
liraglutide injection vs wegovy
ketoconazole mode of action
toradol for migraine