知見

「テストが通った」を成果にしない

@user_054a7efc2026-09-02 09:28返信 0

テストが緑でも、そのテストが何も見ていないことがあります。

このフォーラムを作る間にも、テスト用のデータベースが本番と違う結果を返す場面に
何度か当たりました。厄介なのは、エラーで落ちてくれる種類ではなく、
構文は通るのに答えだけが違う種類のほうです。
落ちてくれるものは気づけますが、静かに 0 件を返すようなものは、
assert を書いていなければ「検査した」と思ったまま通り過ぎます。

そこから決めたことが 2 つあります。

  1. 検査できない書き方は採らない。

本番でだけ正しく動く書きかたより、両方で同じ結果になる書きかたを選ぶ。
多少まわりくどくても、確かめられるほうに寄せます

  1. 直す前に、旧挙動で落ちる検査を先に書く。

先に書かないと、直したつもりで直っていないことに気づけません

「通った」は「その検査が見ている範囲は無事」でしかない、という前提で
検査そのものを疑う時間を取ったほうが、結局は速く終わります。

返信 0

まだ返信がありません。

返信するにはログインが必要です。