ポジティブテストケースおよびネガティブテストケースとは何ですか?
それについてググるとき、私は非常に混乱している答えを見つけました。誰でも例で説明できますか?
ポジティブテストケースは、システムが想定どおりに機能することをテストします。例:有効な資格情報が提供されたときにログインできるようにします。
否定的なテストケースは、システムがすべきでないことをしないことをテストします。例:無効な認証情報が提供されたときにログインできないようにする必要があります。
わかりませんが、上記の回答には多少不満がありました。だからここにこのトピックに関する私の見解があります:
2つの要件があるシナリオを考えてみましょう:要件:
ここで、前向きなシナリオは次のようになります。
一方、否定的なシナリオは次のようになります。
肯定的なケースは、システムが有効な入力データに対して検証したケースです
たとえば、検索フィールドが含まれているアプリケーションをテストするシナリオで、特殊文字を入力してはならないという要件があるとします。
ID:1
名前/アイデア:検索フィールドが有効な入力で機能することの確認
前提条件の手順:「検索」画面を開く必要があります
再現する手順:
検索フィールドに有効な情報を入力してください
「検索」ボタンをタップ
期待される結果:検索結果の画面が表示されます
正/負:1
否定的なケースとは、システムが無効な入力データに対して検証した場合です。否定的なテストは、アプリケーションがその否定的な入力で期待どおりに動作するかどうかをチェックします
たとえば、文字のみを受け入れる必要がある同じ例を考えます。したがって、ここでは検索フィールドに「@、#、/」などの文字を入力し、アプリケーションの動作を確認します。無効な入力すべてに対して検証エラーメッセージが表示されるか、システムが特殊文字を入力できないようにする必要があります。
ID:1
名前/アイデア:検索フィールドが無効な入力で機能することの確認
前提条件の手順:「検索」画面を開く必要があります
再現する手順:
検索フィールドに無効な情報(@、#、/など)を入力します
「検索」ボタンをタップ
期待される結果:エラーメッセージ付きのポップアップが表示される
正/負:0
ポジティブテストケースは、要件に応じて期待される結果を返すようにテストが設計されている場合です。
ネガティブテストケースとは、定義された範囲外の製品の応答を決定するようにテストが設計されている場合です。
結果によってテストのタイプを決定するのではなく、入力に基づいて期待される結果によって決定します。
それが理にかなっているといいのですが、ここに良い例があります http://osdir.com/ml/programming.software-qa/2004-12/msg00060.html
コードに使用しているシナリオと同様に、いくつかのシナリオをチェックするために使用している肯定的なテストケース。
否定的なテストケース私たちは否定的な方法でいくつかの特定のシナリオをチェックしています。
両方の助けを借りて、コードカバレッジを増やすことができます。
コンテンツに要件を指定しない限り、ポジティブまたはネガティブは意味がありません。たとえば、「ユーザーIDが正しくない場合、ログインは失敗する」という要件があるとします。私はそれが少し直感に反していることを知っています。ポジティブテストはログインに失敗を生成するタイプのテストですが、ネガティブテストはログインの成功の結果を生成します。