テストはあり得る誤実装を正しい実装から区別できる必要がある

テストを増やすときは、どの誤実装を検出できるようになるかを考える。同じ入力で同じ結果になる誤実装が残るなら、そのテストの成功だけでは正しさを判断できない。

たとえば「購入額が5,000円以上なら送料無料」という仕様で、6,000円のテストは「5,000円を超えたら無料」という誤実装でも通る。4,999円、5,000円、5,001円を選び、仕様から期待値を決めれば、境界の扱いを区別できる。これは説明のための例だが、テスト数よりも入力の選び方と期待値の根拠が効く理由がわかる。

Dan Luu のエージェントによる実装実験では、テスト手法を指定しても、バグの検出につながらない使い方が多かった。ここから考えたいのは手法の順位よりも、生成されたテストが想定する誤りを見分けられるかである。

https://danluu.com/agentic-testing/

エージェントにテストを任せる際も、あり得る誤解、その誤解によって結果が変わる入力、期待値の根拠を示してもらうと、検証内容を確認しやすくなる。実装の出力をそのまま期待値にすると、実装の誤りをテストにも写してしまう。

検証可能性から仕事を分解するとき、その判定方法自体に誤りを区別する力があるかも確かめたい。

#testing #verification #ai-agent