3.2.2. テストシナリオへの EXPECT 結果の追加


EXPECT セクションには、GIVEN に入力したファクトに基づいて想定される結果を定義します。つまり、入力ファクトを GIVEN (指定) すると、その他のファクトが有効であること、またはルール全体が有効であることを EXPECT (想定) します。たとえば、このシナリオで、申請者が 21 歳未満の場合に 想定される 結果は、(申請者の年齢が基準を満たさないため) LoanApplicationapprovedfalse になるか、Underage ルール全体が有効になります。

前提条件

テストシナリオに必要なデータオブジェクトがすべて作成、またはインポートされていて、テストシナリオデザイナーの Data Objects タブにリストされています。

手順

  1. テストシナリオデザイナーで EXPECT をクリックし、利用可能なファクトが追加されている New expectations ウィンドウを開きます。

    図3.5 テストシナリオへの EXPECT 結果の追加

    テストシナリオへの EXPECT 結果の追加

    リストには以下のオプションが含まれます。表示されるオプションは、GIVEN セクションのデータや、テストシナリオデザイナーの Data Objects タブで利用可能なデータオブジェクトによって異なります。

    • Rule: プロジェクトに、GIVEN に指定した内容に対して有効になることが想定される特定のルールを指定します。ルールの名前を入力するか、ルールリストから選択します。次に、テストシナリオデザイナーで、ルールが有効になるべき回数を指定します。
    • Fact value: ファクトを選択し、GIVEN セクションに定義したファクトに対して有効になることが想定される値を定義します。ファクトは、GIVEN の入力に対して事前に定義した Fact name でリストされます。
    • Any fact that matches: GIVEN に指定した内容に対して、指定した値を持つファクトが最低 1 つ存在するかどうかの妥当性を確認します。
  2. (Fact value: application などの) 期待される結果のファクトを選択し、Add または OK を選択します。
  3. テストシナリオデザイナーでファクトをクリックし、追加または修正するフィールドを選択します。

    図3.6 ファクトフィールドの修正

    ファクトフィールドの修正
  4. フィールド値に、GIVEN に指定した内容に対して、有効になると想定される値 (approved | equals | false など) を設定します。
  5. 続いて、シナリオに別の EXPECT 入力データを追加し、テストシナリオデザイナーで Save をクリックして、設定内容を保存します。
  6. シナリオに GIVENEXPECT、その他のデータを定義して保存したら、右上の Run scenario をクリックしてこの .scenario ファイルを実行するか、(複数の場合は) Run all scenarios をクリックして、プロジェクトパッケージに保存したすべての .scenario を実行します。Run scenario オプションでは、個々の .scenario ファイルを保存する必要はありませんが、Run all scenarios オプションを使用する場合は、すべての .scenario ファイルを保存する必要があります。

    テストに失敗したら、ウィンドウ下部の Alerts メッセージに記載されている問題に対応し、シナリオの全コンポーネントを見直し、エラーが表示されなくなるまで妥当性確認を行います。

  7. 変更がすべて終了したら、テストシナリオデザイナーで Save をクリックして、設定した内容を保存します。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.