Skip to content

テストでは変化する値だけ検査する

How I Learned To Stop Writing Brittle Tests and Love Expressive APIsによると、テストの関心とは異なる値をまとめて検査してしまうと、それは無関係な変更で壊れやすいテスト(brittle test)となってしまうので避けるべきだと書いてある。例えばGoでは、構造体ひとつまるごと検査するのではなく、変化をするフィールドだけを個別に検査するように書く。

それだけでは意図せず変化してしまうフィールドを検知できなくなるので、全体の検査は別のテストケース、ただし少数だけ実施するといい。