第5章 テストシナリオ


Red Hat Decision Manager のテストシナリオでは、ルール、モデル、およびイベントの機能を実稼働環境にデプロイする前に検証できます。テストシナリオでは、ファクトまたはプロジェクトモデルのインスタンスと似ている条件のデータを使用します。このデータは特定のルールセットと照合され、想定された結果が実際の結果と一致するとテストに成功します。想定された結果が実際の結果と一致しない場合はテストに失敗します。

テストシナリオをすべて実行した後、シナリオの状態は Reporting パネルに報告されます。

テストシナリオは、1 度に 1 回またはグループ単位で実行できます。グループの実行では、1 つのパッケージのすべてのシナリオが対象になります。テストシナリオは独立したものであり、1 つのシナリオが他のシナリオを変更したり、影響を与えたりすることはありません。

5.1. 制限速度シナリオのテスト

交通違反のガイド付きデシジョンテーブルを作成したときに指定したデータを使用して制限速度のシナリオをテストします。

前提条件

  • Driver_department_traffic_violations プロジェクトを作成していること。
  • ViolationDriver のデータオブジェクトを作成していること。
  • 交通違反のガイド付きデシジョンテーブルが作成されていること。

手順

  1. Decision Central にログインします。
  2. Menu Design Projects の順にクリックし、Driver_department_traffic_violations をクリックします。
  3. Add Asset Test Scenario の順にクリックします。
  4. Create new Test Scenario window ウィザードで以下の値を入力します。

    1. Test Scenario: Speed limit 10-20.
    2. Package: com.myspace.driver_department_traffic_violations を選択します。
  5. OK をクリックします。
  6. +GIVEN をクリックして New input ウィンドウを開きます。
  7. Insert a new fact メニューで Violation を選択します。
  8. Fact name フィールドに violation と入力し、Add をクリックします。
  9. Insert 'Violation'[violation] の下にある Add a field をクリックして Choose a field to add ウインドウを開きます。
  10. Choose a field to add メニューで speedLimit を選択し、OK をクリックします。
  11. ( 6191 ) をクリックした後、speedLimit の横にある Literal value をクリックします。
  12. Field value ウインドウの Literal value をクリックした後、speedLimit フィールドに 40 を入力します。
  13. Insert 'Violation'[violation] をクリックします。
  14. Choose a field to add ウインドウの Choose a field to add メニューで type を選択し、OK をクリックします。
  15. ( 6191 ) をクリックした後、Literal value の横にある Literal value をクリックします。
  16. type フィールドに Speed と入力します。
  17. Insert 'Violation'[violation] をクリックします。
  18. Choose a field to add メニューで actualSpeed を選択し、OK をクリックします。
  19. ( 6191 ) をクリックした後、Literal value の横にある Literal value をクリックします。
  20. actualSpeed フィールドに 55 と入力します。
  21. +Expect をクリックして New expectation ウインドウを開きます。
  22. Rule メニューを展開して Row 1 SpeedViolationRule を選択し、OK をクリックします。
  23. +GIVEN をクリックして New input ウインドウを開き、Activate rule flow group フィールドに trafficViolation と入力し、Add をクリックします。
  24. +Expect をクリックして New expectation ウインドウを開き、Fact value: violation の横にある Add をクリックします。
  25. Violation 'violation' has values: をクリックし、 Choose a field to add ウインドウを開きます。
  26. Choose a field to add メニューで fineAmount を選択し、OK をクリックします。
  27. fineAmount: equals フィールドに 100.0 と入力します。
  28. Violation 'violation' has values: をクリックし、 Choose a field to add ウインドウを開きます。
  29. Choose a field to add メニューで points を選択し、OK をクリックします。
  30. points: equals フィールドに 1 を入力します。
  31. Save をクリックした後、Save をクリックして変更を確認します。
  32. Run scenario をクリックします。

    図5.1 速度テストの結果画面

テストシナリオで設定された値と条件がスピード違反のガイド付きディシジョンテーブルで指定した要件に合致していれば、ウィンドウ下部にある Reporting セクションに Success メッセージが表示されます。

5.2. 運転免許停止シナリオのテスト

Driver License Suspension のルールおよびアクションを設定したときに指定したデータを使用して運転免許停止シナリオをテストします。

前提条件

  • Driver_department_traffic_violations プロジェクトを作成していること。
  • ViolationDriver のデータオブジェクトを作成していること。
  • 運転免許停止のルールおよびアクションが設定されていること。

手順

  1. Decision Central にログインします。
  2. Menu Design Projects の順にクリックし、Driver_department_traffic_violations をクリックします。
  3. Add Asset Test Scenario の順にクリックします。
  4. Create new Test Scenario window ウィザードで以下の値を入力します。

    1. Test Scenario: Suspend due to total points.
    2. Package: com.myspace.driver_department_traffic_violations を選択します。
  5. OK をクリックします。
  6. +GIVEN をクリックして New input ウィンドウを開きます。
  7. Insert a new fact メニューで Driver を選択します。
  8. Fact name フィールドに driver と入力し、Add をクリックします。
  9. 'Driver'[driver] の下にある Add a field をクリックして Choose a field to add ウインドウを開きます。
  10. Choose a field to add メニューで totalPoints を選択し、OK をクリックします。
  11. totalPoints の横にある ( 6191 ) をクリックして Literal value をクリックした後、totalPoints フィールドに 10 を入力します。
  12. +GIVEN をクリックして New input ウィンドウを開きます。
  13. Insert a new fact メニューで Violation を選択します。
  14. Fact name フィールドに violation と入力し、Add をクリックします。
  15. Insert 'Violation'[violation] の下にある Add a field をクリックして Choose a field to add ウインドウを開きます。
  16. Choose a field to add メニューで points を選択し、OK をクリックします。
  17. ( 6191 ) をクリックした後、Literal value の横にある Literal value をクリックします。
  18. points フィールドに 10 を入力します。
  19. +Expect をクリックして New expectation ウインドウを開きます。
  20. Rule メニューを展開して DriverLicenseSuspensionRule を選択し、OK をクリックします。
  21. +GIVEN をクリックして New input ウインドウを開き、Activate rule flow group フィールドに trafficViolation と入力し、Add をクリックします。
  22. +Expect をクリックして New expectation ウインドウを開き、Fact value: driver の横にある Add をクリックします。
  23. Driver 'driver' has values: をクリックし、 Choose a field to add ウインドウを開きます。
  24. Choose a field to add メニューで state を選択し、OK をクリックします。
  25. state: equals フィールドに suspend と入力します。
  26. Save をクリックした後、Save をクリックして変更を確認します。
  27. Run scenario をクリックします。

    結果

    ルールが実行され、点数の合計が >= 20 であるため、運転者の運転免許が停止となります。

    図5.2 停止テストの結果画面

テストシナリオで設定された値と条件が運転免許停止のルールおよびアクション設定時に指定した要件に合致していれば、ウィンドウ下部にある Reporting セクションに Success メッセージが表示されます。

5.3. 複数違反シナリオのテスト

Suspend due to total points アセットをコピーおよび編集し、Driver License Suspension ルールおよびアクションの設定時に指定したデータを使用して複数の違反行為を行ったドライバーの運転免許停止シナリオを作成します。

前提条件

  • Driver_department_traffic_violations プロジェクトを作成していること。
  • ViolationDriver のデータオブジェクトを作成していること。
  • 運転免許停止のルールおよびアクションが設定されていること。

手順

  1. Decision Central にログインします。
  2. Menu Design Projects の順にクリックし、Driver_department_traffic_violations をクリックします。
  3. Suspend due to total points Copy をクリックし、New Asset Name フィールドに Suspend due to multiple violations を入力して Make a Copy をクリックします。
  4. Space MySpace Driver_department_traffic_violations をクリックした後、Suspend due to multiple violations アセットを選択します。
  5. +GIVEN をクリックして New input ウィンドウを開きます。
  6. Insert a new fact メニューで Violation を選択します。
  7. Fact name フィールドに violation2 と入力し、Add をクリックします。
  8. points の横にある ( 6191 ) をクリックし、Literal value をクリックした後、points violation2 フィールドに 5 を入力します。
  9. totalPoints の値を 10 から 5 に変更します。
  10. Save をクリックした後、Save をクリックして変更を確認します。
  11. Run scenario をクリックします。

    図5.3 停止テストの結果画面

テストシナリオで設定された値と条件が運転免許停止のルールおよびアクション設定時に指定した要件に合致していれば、ウィンドウ下部にある Reporting セクションに Success メッセージが表示されます。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat