第 70 章 测试场景中的表达式语法
测试场景设计器支持基于规则和基于 DMN 的测试场景的不同表达式语言。基于规则的测试场景支持 MVFLEX 表达式语言(MVEL)和基于 DMN 的测试场景,支持 Friendly Enough Expression Language(FEEL)。
70.1. 基于规则的测试场景中的表达式语法 复制链接链接已复制到粘贴板!
基于规则的测试场景支持以下内置数据类型:
- 字符串
- 布尔值
- 整数
- Long
- 双
- 浮点值
- 字符
- 字节
- 短
- LocalDate
对于任何其他数据类型,请使用带有前缀 # 的 MVEL 表达式。
按照测试场景设计器中的 BigDecimal 示例以使用 # 前缀来设置 java 表达式:
-
输入
# java.math.BigDecimal.valueOf(10)作为 GIVEN 列值。 -
Enter
# actualValue.intValue() == 10for the EXPECT column value.
您可以引用 java 表达式中的 EXPECT 列的实际值来执行条件。
测试场景设计器支持以下基于规则的测试场景定义表达式:
| Operator | 描述 |
|---|---|
| = | 指定与值相等。这适用于所有列,是 GIVEN 列支持的唯一 Operator。 |
| =, =!, <> | 指定值的质量。此运算符可以与其他运算符合并。 |
| <, >, <=, >= | 指定比较:小于、大于、小于或等于,且大于. |
| # | 此运算符用于将 java 表达式值设置为属性标题单元格,可以作为 java 方法执行。 |
| [value1, value2, value3] | 指定值列表。如果一个或多个值有效,则场景定义将评估为 true。 |
| expression1; expression2; expression3 | 指定表达式列表。如果所有表达式都有效,则场景定义将评估为 true。 |
在评估基于规则的测试场景时,会从评估中跳过一个空单元格。要定义空字符串,请使用 =、[] 或 ; 以及定义 null 值,请使用 null。
| 表达式 | 描述 |
|---|---|
| -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 选项卡中引用支持的命令和语法。