web-dev-qa-db-ja.com

ポジティブテストケースとネガティブテストケース

ポジティブテストケースおよびネガティブテストケースとは何ですか?

それについてググるとき、私は非常に混乱している答えを見つけました。誰でも例で説明できますか?

11
a Learner

ポジティブテストケースは、システムが想定どおりに機能することをテストします。例:有効な資格情報が提供されたときにログインできるようにします。

否定的なテストケースは、システムがすべきでないことをしないことをテストします。例:無効な認証情報が提供されたときにログインできないようにする必要があります。

23
Scott Helme

わかりませんが、上記の回答には多少不満がありました。だからここにこのトピックに関する私の見解があります:

  1. ポジティブテストは、発生するはずのことをテストします。
  2. ネガティブテストは、発生してはならないこと、発生しないことのテストです。

2つの要件があるシナリオを考えてみましょう:要件:

  1. 一部の文字を入力するためのテキストボックス。
  2. 入力したテキストをサーバーに送信するためのボタン。
  3. 文字数が5文字未満の場合に表示されるメッセージ「5文字未満」。
  4. サーバーが送信されたテキストを受け入れるときに表示されるメッセージ。 「テキスト受け入れ」。

ここで、前向きなシナリオは次のようになります。

  1. テキストボックスに「abcdef」と入力します。
  2. 送信ボタンをクリックします。
  3. 「テキスト受理」が表示されている必要があります。

一方、否定的なシナリオは次のようになります。

  1. テキストボックスに「abcd」と入力します。
  2. 送信ボタンをクリックします。
  3. 「テキスト受理」を表示しないでください。
1
deejaydrives

肯定的なケースは、システムが有効な入力データに対して検証したケースです

たとえば、検索フィールドが含まれているアプリケーションをテストするシナリオで、特殊文字を入力してはならないという要件があるとします。

ID:1

名前/アイデア:検索フィールドが有効な入力で機能することの確認

前提条件の手順:「検索」画面を開く必要があります

再現する手順:

  1. 検索フィールドに有効な情報を入力してください

  2. 「検索」ボタンをタップ

期待される結果:検索結果の画面が表示されます

正/負:1

否定的なケースとは、システムが無効な入力データに対して検証した場合です。否定的なテストは、アプリケーションがその否定的な入力で期待どおりに動作するかどうかをチェックします

たとえば、文字のみを受け入れる必要がある同じ例を考えます。したがって、ここでは検索フィールドに「@、#、/」などの文字を入力し、アプリケーションの動作を確認します。無効な入力すべてに対して検証エラーメッセージが表示されるか、システムが特殊文字を入力できないようにする必要があります。

ID:1

名前/アイデア:検索フィールドが無効な入力で機能することの確認

前提条件の手順:「検索」画面を開く必要があります

再現する手順:

  1. 検索フィールドに無効な情報(@、#、/など)を入力します

  2. 「検索」ボタンをタップ

期待される結果:エラーメッセージ付きのポップアップが表示される

正/負:0

1
QArea

ポジティブテストケースは、要件に応じて期待される結果を返すようにテストが設計されている場合です。

ネガティブテストケースとは、定義された範囲外の製品の応答を決定するようにテストが設計されている場合です。

結果によってテストのタイプを決定するのではなく、入力に基づいて期待される結果によって決定します。

それが理にかなっているといいのですが、ここに良い例があります http://osdir.com/ml/programming.software-qa/2004-12/msg00060.html

0
femi igun

コードに使用しているシナリオと同様に、いくつかのシナリオをチェックするために使用している肯定的なテストケース。

否定的なテストケース私たちは否定的な方法でいくつかの特定のシナリオをチェックしています。

両方の助けを借りて、コードカバレッジを増やすことができます。

0
Ankit

コンテンツに要件を指定しない限り、ポジティブまたはネガティブは意味がありません。たとえば、「ユーザーIDが正しくない場合、ログインは失敗する」という要件があるとします。私はそれが少し直感に反していることを知っています。ポジティブテストはログインに失敗を生成するタイプのテストですが、ネガティブテストはログインの成功の結果を生成します。

0
waterinusa