チェックはすべて通過。でも、そのうち2つは何も検証していなかった
これは、私がオープンソースで公開しているハーネスの1つ、 Harness Kitでの話です。テストがすべて緑なら大丈夫だと思っていましたが、もっと乱暴な方法を試してみました。チェックを1つずつ削除して、そのたびにテストを実行したのです。すると、2つのチェックは削除してもテストがすべて通りました。そのうち1つは、ファイル名を使ってハーネスが信頼する記録を偽造されるのを防ぐ、唯一の仕組みでした。
2回の入念なレビューでも、どちらも見落とされていました。削除を1回試しただけで、数分で見つかったのです。今ではルールにしています。チェックを追加したら、それを削除してテストが失敗することを確認する。実際の画面を見るのと同じ教訓です。失敗したときに検知できて初めて、合格に意味が生まれます。