読書感想文「単体テストの考え方/使い方」
はじめに
単体テストの考え方/使い方の感想。単体テストの書籍は数あれどテストフレームの使い方、もしくは理論的な内容にフォーカスしている書籍がほとんどで、両者を結びつける位置の書籍は少ないなぁと感じていました。しかし、この本はちょっと読んでみた段階で実際にプロジェクトでテストやって疑問に思った点のアンサーや考えるキッカケになりそうと購入。
なぜ単体テストを行うのか?
ソフトウェア開発プロジェクトを「持続可能」なものにすることを単体テストの目的に据えている説明は自身の視野が広がって学びになる。「持続可能」にすることはプロジェクト全体を通して目的にしていましたが、単体テストは不具合を見つけたり設計のマズさを見つけるための道具として見ている節があったので。。。
単体テスト<=>「持続可能」
という強く結びついたなら、口が裂けても「テストの工数が確保できないため後からやりません?」とかは言わなくなるハズ。うん、きっと、たぶん、気持ちの上では!
テストの質とコードの質
"コードカバレッジが高いことがテストの質が高いわけじゃないよ。ただ、テストの質が悪いのでは?と考える大事な指標になるよ"という点は常々思っていたことなので、もっと広まってほしい。
"あと、単体試験が書きにくいコードは設計の質が悪いかもしれないけど、単体試験が書きやすいからといって設計の品質が高いとも言い切れない"という点も、まあ確かに。プロジェクトに求められることは千差万別だから単体試験だけで言い切れない
なにがテストの質を上げる?
最小限のコストで最大限の価値を上げれるような単体試験になっていると質が高いという点には同意できて、やっぱりコレが結論で、この実現のために何ができるかを考え続けるのが大事。
これをどう実現するの?どう考えるの?
といった質問へのアンサーが著者の経験をベースに体系化されていて、とても分かりやすくて、ソフトウェア開発にかかわる人は必読と色んなトコロで紹介されそうな本でした。
おわりに
人によっては著者と開発で担当する分野が違ったりして違和感を感じるところはあるかもしれないです。自分もそういう点はあったのですが、自分が経験してきたことへ考え直したりする契機になって考えが整理できてとてもよかった。ちょっと飛ばし読み気味に読んでしまったので2回目読もう。
Discussion