第9章 テストシナリオの式構文
テストシナリオデザイナーでは、ルールベースおよび DMN ベースのテストシナリオの両方で、異なる式言語をサポートします。ルールベースのテストシナリオは MVFLEX 式言語 (MVEL) を、DMN ベースのテストシナリオは FEEL (Friendly Enough Expression Language) 式言語をサポートします。
9.1. ルールベースのテストシナリオの式構文
ルールベースのテストシナリオは、以下の組み込みデータ型をサポートします。
- String
- Boolean
- Integer
- Long
- Double
- Float
- Character
- Byte
- Short
- LocalDate
その他のデータ型については、プリフィックスとして # を指定した MVEL 式を使用してください。
テストシナリオデザイナーの BigDecimal の例に従って、プリフィックス # を使用して java 式を設定します。
-
GIVEN 列の値に、
# java.math.BigDecimal.valueOf(10)と入力します。 -
EXPECT 列の値に
# actualValue.intValue() == 10と入力します。
java 式の EXPECT 列の実際の値を参照して、条件を実行できます。
テストシナリオデザイナーでは、以下に示すルールベースのテストシナリオの定義式がサポートされます。
表9.1 式構文の説明
| Operator | 説明 |
|---|---|
| = | 値と同等であることを指定します。これは、全列でデフォルトとなっており、GIVEN 列でサポートされる唯一の演算子です。 |
| =、=!、<> | 値が同等でないことを指定します。この演算子は、他の演算子と組み合わることができます。 |
| <、>、<=、>= | 比較 (未満、値よりも大きい、以下、以上) を指定します。 |
| # | この演算子を使用して、プロパティーヘッダーセルに java 式の値を設定することで、java メソッドとして実行できます。 |
| [value1, value2, value3] | 値の一覧を指定します。1 つまたは複数の値が有効な場合は、シナリオの定義が True と評価されます。 |
| expression1; expression2; expression3 | 式のリストを指定します。すべての式が有効な場合は、シナリオ定義が True と評価されます。 |
ルールベースのテストシナリオを評価する場合、空のセルは評価からスキップされます。空の文字列を定義するには、=、[]、または ; を使用します。null 値を定義するには、null を使用します。
表9.2 式の例
| 式 | 説明 |
|---|---|
| -1 | 実際の値は、-1 と同等です。 |
| < 0 | 実際の値は、0 未満です。 |
| ! > 0 | 実際の値は、0 以下です。 |
| [-1, 0, 1] | 実際の値は、-1、0、または 1 です。 |
| <> [1, -1] | 実際の値は、1 でも -1 でもありません。 |
| !100; 0 | 実際の値は、100 ではなく、0 です。 |
| != < 0; <> > 1 | 実際の値は、0 未満でも、1 以上でもありません。 |
| <> <= 0; >= 1 | 実際の値は、0 以下でなく、1 以上です。 |
ルールベースのテストシナリオデザイナーの右側にある Scenario Cheatsheet タブで、サポートされているコマンドと構文を参照できます。