spockframework:检查每个功能后的预期结果

spockframework: check expected result after every feature

我正在使用 spockframework 和 geb 进行测试自动化。我想在每个功能之后执行一个简单的检查以确保没有显示错误对话框,我添加了以下 cleanup() 方法:

 def cleanup() {
    expect:
    $('.myErrrorDialogClass').isEmpty()
 }

代码在每个功能之后执行,但在显示对话框时不会抛出任何错误。

Spock 使用 AST 转换为每个测试标签(whenexpect 等)连接功能;他们可能不会 运行 cleanup 方法上的转换。他们不期望或不鼓励清理中的断言,因此代码可能 运行 但实际上不断言任何东西。

您可以使用不带 expect 块的标准 Groovy assert 调用来解决此问题。

Summarized from our comment discussion above - in case you want to accept it as an answer ;-)