単体テストの考え方/使い方を読んだ。
質の高いテスト設計の為に必要な考え方やアプローチがまとめられている。テスト手法に留まらないテスト設計の本であり、テスト関連の本の中でもあまり類を見ないものだと思われる。
良いテストは、リグレッションへの保護、リファクタリング耐性、フィードバックの迅速さ、保守性を備えているが、これらを全て満たすのは難しいため費用対効果を考える必要がある。本書はその考え方を示す実践的な例が多く含まれている。
今までプロダクションコードに対しては基本的にはテストを書くことを意識していたが、書くか書かないかの判断軸をちゃんと持ち合わせていなかったことに気付かされた。質の高いテストを書くには多分AIにはまだ難しいであろう深い設計理解が求められると感じた。
10章データベースの話は印象的。データベースに関するテストで気になっていたことがほとんど網羅されていた。