16

これは、「CreateNewWidget」のユースケースをテストするテストの説明です。

  • システムに新しいウィジェットを入力できることを確認します。

これは、「CreateNewWidget」のユースケースをテストする別のテストの説明です。

  • アプリケーションを起動します。
  • 「A-008」という名前で新しいウィジェットを作成します。説明は「受け入れテスト3-45のテストウィジェット」です。
  • ウィジェットが左端のウィジェットツリービューに表示されていることを確認します。
  • ツリービューで別のウィジェットを選択してから、ウィジェット「A-008」を再度選択してください。ウィジェットの表示値が入力した値と等しいことを確認してください。
  • ウィジェット「A-008」を削除して、アプリケーションを閉じます

これは、「CreateNewWidget」のユースケースをテストする別のテストの説明です。

  • アプリケーションを起動します。
  • 同じデータを表示しているアプリケーションの2番目のインスタンスを起動します。
  • アプリケーションの最初のインスタンスで、「ウィジェット」ノードを右クリックします。次のコンテキストメニューで、[新しいウィジェットの作成]メニュー項目をアクティブにします。
  • 「新しいウィジェット」ウィンドウをアクティブにする必要があります。すべてのフィールドを空白のままにして、[OK]ボタンを押します。「ウィジェット名を入力してください」というメッセージボックスが表示されます。このメッセージボックスで[OK]を押します。
  • 「名前」フィールドに「A-008」と入力します。
  • 説明フィールドを「ラマ(ラマグラマ)は南米のラクダ科動物であり、インカや他のアンデス山脈の原住民によって駄獣として広く使用されています。南米では、ラマは今でも重荷の獣として使用されています。繊維と肉の生産のために。成長したフルサイズのラマの高さは頭頂部で5.5フィート(1.6メートル)から6フィート(1.8メートル)の間であり、それらは約280ポンドの間の重さである可能性があります(127キログラム)と450ポンド(204キログラム)。出生時、赤ちゃんラマ(クリアと呼ばれる)は20ポンド(9キログラム)から30ポンド(14キログラム)の重さがあります。
  • OKボタンを押します。「説明は512文字以下である必要があります」というメッセージボックスが表示されます。
  • 説明を「'); DELETE FROM WIDGET WHERE 1=1;」に設定します。[説明]フィールドに入力します。OKボタンを押します。
  • 左端のツリービューに、「A-008」という名前の新しいウィジェットが表示されているはずです。
  • アプリケーションの2番目のインスタンスでウィンドウをアクティブにし、ウィジェット「A-008」がそのツリービューにも自動的に表示されることを確認します。
  • アプリケーションの最初のインスタンスで、「ウィジェット」ノードを右クリックします。次のコンテキストメニューで、[新しいウィジェットの作成]メニュー項目をアクティブにします。「新しいウィジェット」ウィンドウをアクティブにする必要があります。
  • 名前を「A-008」に設定し、OKを押します。「この名前のウィジェットは既に存在します。別のウィジェット名を選択してください」というメッセージボックスが表示される必要があります。
  • このメッセージボックスの[OK]ボタンを押してから、[キャンセル]ボタンを押して[ウィジェットの作成]ダイアログボックスを終了します。
  • 2番目のインスタンスでウィジェット「A-008」のウィジェットページを表示します。
  • 最初に、[元に戻す]メニュー項目を押します
  • 2番目のインスタンスにスタートページが表示されていることを確認します。
  • .................等..............

各例では、新しいウィジェットを作成できることをテストしています。3番目のテストでは、経験豊富なプログラマーとして機能をテストし、「OK、バグが発生する可能性のあるすべての場所はどこですか」と考え、これらすべてをチェックしました。3つ目は顧客の検収試験に適していますか?

「包括的すぎる」とはどの程度包括的ですか。

4

6 に答える 6

10

ユーザー受け入れテストケースは、詳細かつ単純である必要がありますが、3番目の例ほど詳細ではありません。検収試験とは、顧客が同意したものを確実に入手できるようにすることです。「これをクリックしてからクリックするなど...」と言うだけで、機能テストのようなものになります。機能が受け入れテストで提示されたテストケースを満たしていることを確認するようにユーザーを誘導しているわけではありません。あなたは彼らにあなたが単に自動化することができたであろうテストをクリックするように頼んでいるだけです。

ユーザー受け入れテストは、「ウィジェットの作成、表示の確認、ウィジェットの削除など」に沿ったものにする必要があります。これにより、ユーザーは個々の機能を探し、(副作用として)見落としている可能性のあるユーザビリティの問題を洗い流すことができます。

于 2009-05-07T00:49:59.333 に答える
1

私はあなたの受け入れテストは主に良いパステストであるべきだと思います。「適切な」パスにより、エラーが適切に処理される場合があります。セキュリティを検証し、コーナーケースを実行する他のテストが必要ですが、受け入れテストは、考えられるすべての条件が正しく処理されることを確認することよりも、正しいアプリケーションが構築されていることを確認することです。優れた単体テストがあり、ベストプラクティスを使用している場合は、適切なパステストが完全に適切であると思います。

たとえば、パラメータ化されたクエリを適用するテクノロジを使用した場合や、手動でクエリを生成する場合(私はしません)、SQLインジェクションに問題がないことをテストする必要はありません。単体テストでは、注入は失敗します。単体テストでコーナーケースに対処することで、受け入れテストでそれらに焦点を当てることはそれほど重要ではなくなります。バックエンドの実装が顧客の懸念に対処していることを顧客に例としていくつか含める必要がある場合は、必ずそうしてください。ただし、他のテストで適切に対処したことがわかっていることはテストしません。

于 2009-05-07T00:47:17.123 に答える
1

それは私には機能テスト計画のように見えます(つまり、内部テスト

受け入れテストは通常​​、顧客に何を示すかを指します。顧客にそのようなテストを与えることができると思います-幸運を祈ります

ユーザー受け入れテストの場合、私は非常に単純な形式を好みます (もちろん、これはおそらくスペース シャトル ソフトウェアやバンキングには適していません)。小規模から中規模の Web プロジェクトには問題ありません

その核心は次のとおりです。システム内のすべてのページをリストする表を作成し、クライアントがイニシャルを記入する列を作成し、自分がイニシャルを記入する列をもう 1 つ作成します。クライアントと数時間一緒に座って、すべてを確認します。ページに満足したら、サインオフします

テンプレートの詳細については、ユーザー受け入れテストを参照してください。

于 2010-06-10T10:12:38.007 に答える
0

完璧な世界では、テストの説明は次のようになります。

  • すべての自動テストが正常に完了するまで実行されることを確認します

ユースケースでは、パスごとに1つの自動テストがあります。

あらゆる形式のスクリプト化された手動テストは、労働集約的であることは言うまでもなく、エラーが発生しやすく、バグを見逃すことになります。

于 2009-05-07T00:32:51.667 に答える
0

あなたのスペックは何と言っていますか?3番目のテストケースで概説されているすべてのことを網羅している場合、なぜ私はあなたの顧客として、あなたの製品が仕様全体に準拠していることを確認したくないのでしょうか。

要件の明示的なセット( facepalm )がない場合は、テストをモジュールに分割します:資格(顧客と)、統合(開発者がモジュールをテストする)、および開発(開発者が個々のモジュールをテストする)。

DT&Eを可能な限り自動化します(たとえば、単体テストを使用してSQLインジェクション、文字列長のオーバーフローなどをテストします)。バックエンドは、バックエンドと通信するGUIから分離する必要があるため、これは簡単に実行できるはずです(右?)。3番目のテストケースで概説したGUIのほとんどは、統合テストの一部としてカバーできます(バックエンドとGUIの間の統合を実際にテストしているため)。

顧客が単体テスト、統合テストの手順と結果を確認できれば、認定テストは非常に簡単で簡単になります。

于 2009-05-07T00:51:23.667 に答える
0

彼らは通常のユースケースをテストする必要があります(例外的なものではありません)。しかし、彼らが例外的なものをテストする場合、それは非常にクールです!

受け入れテストはあまり詳細にすることはできません。テストすればするほど、最終製品を楽しむことができます。

于 2009-05-07T00:55:33.283 に答える