在 IntelliJ IDEA 中调试时,无法在 Evaluate Expression 对话框中访问 Spock 测试的变量

Variables of Spock test are not accessible in Evaluate Expression dialog while debugging in IntelliJ IDEA

在下面的 Spock 测试中:

def 'simple assertion'() {
    expect:
    Math.max(a, b) == max

    where:
    a | b | max
    3 | 5 | 5
    4 | 9 | 9
    }

在 expect 块的代码行中设置断点时,无法在调试时从 Evaluate Expression... 对话框访问变量 (a, b) 的值。返回的异常是:

groovy.lang.MissingPropertyException: No such property: a, b for class: DUMMY

唯一的解决方法是手动将 where 部分的数据复制到计算表达式对话框中。

如何使用 评估表达式 而无需手动复制测试 where 部分的值?

我在 macOS 12 Monterey 上使用 IntelliJ IDEA Ultimate 2022.1 运行,Groovy 版本 4 和 Gradle 作为构建工具。

当我明确声明参数时它对我有用。

def 'simple assertion'(int a, int b, int max) {
    expect:
    Math.max(a, b) == max

    where:
    a | b | max
    3 | 5 | 5
    4 | 9 | 9
}