境界値分析を使用するときに境界内で2つの値を使用する理由を理解できません。 たとえば、プログラムには次の要件があります。1)1〜100の値がtrue、そうでない場合はfalseです。境界値分析、なぜ境界内に2つの値を使用するのですか?
func calc(x):
if (x >= 1 and x <= 100):
return True
else:
return False
(例えばプレスマン、)たくさんの本は、あなたがそのようなプログラムをテストするために、入力0、1、2、99、100および101を使用する必要が言います。
私の質問は、なぜ入力 '2'と '99'を使用するのですか? テストケースセット(0,1,2,99,100,101)が失敗を示し、テストケースセット(0,1,100,101)がそれを公開していないという欠陥を持つプログラムを作成しようとしています。 私はそのようなプログラムを作ることができません。
このようなプログラムを作成できますか? そうでなければ、リソース冗長テストケース '2'と '99'を作成するのは無駄です。
うん。しかし、私は理由を知りたいです。あなたの例では、値1と99が重複していると思います。テストケース(0,100,1,99,1,101)がバグを見つけ、テストケース(0,100、-1,101)がそれを見つけられないというプログラムを作ろうとします。 –
私が言ったように、BVAはそのように定義されていますが、ハードとファーストルールはありません。それはビジネス慣行に従うかどうかにかかっています。 BVAの考え方は、境界がアプリケーション内で最も脆弱な入口/出口点の1つであるため、境界が正しいことを保証することです。 –