#使っている書籍
テスト駆動開発
KentBeck (著), 和田卓人 (翻訳)
#やっていること
テスト駆動開発はJavaとJUnitで書かれているけど、自分のPCにJavaの開発環境は作ってない……
Visual Studioはインスコしていて比較的使い慣れているので、個人的に好きなC#とVisual Studioに備わっているMSTestでやってみた。
###環境
- Microsoft Visual Studio Community 2017 Version 15.8.7
- .NET Framework 4.6.1
#学んだこと
テスト駆動開発では、以下の順序で行う。
- 正しい振る舞いを考えてテストを書く
- 空実装でも罪深い実装でもよいのでコンパイルを通す
- テストが通るように正しい実装を行う
三角測量:異なる実例でテストを書き、実装を行うことで正しく実装する
#感じたこと
テスト駆動開発は、現場ではあまり使われないらしい。(知らんけど)
でも、以下の良い点があると感じたので、趣味ではやっていきたい。
- 先にテストで振る舞いを考えることにより、何をゴールにして実装するか明確になる
- コードを書いていると最後まで書ききってから実行して確認する癖があるため、間違っていた場合に軌道修正しやすい
- 今までのコードを振り返ると、1つのメソッドに多くのロジックを詰め込んでいたが、TDDによってテストを先に書くことでテストできるような単位に分割できるのではと感じた