Gatling 需要 ChainBuilder 在 ExitOnBlockOrFail 时找到 B无法识别方法执行

问题描述

我想知道为什么这段代码显示一个错误,说它需要一个 ChainBuilder 但找到了 B,而 B 究竟是什么。我有几个月的时间想知道这个问题,因为我的代码仍然可以用它编译,但如果可能的话,我很想删除这个错误

enter image description here

即使我最简化它但保留 exitBlockOnFail 部分,它仍然会给我红色警告,所以我想知道他们两者之间的联系是什么。

// Error
object StudentDashboardBranches {

  def studentDashboard: ChainBuilder = exitBlockOnFail(
    exec {
      session =>
        println(session("session").as[String])
        session
    }
  )
  
}

// No error
object StudentDashboardBranches {

def studentDashboard: ChainBuilder = (
    exec {
      session =>
        println(session("session").as[String])
        session
    }
  )
}

也许是另一个问题,或者可能与同一问题有关,不确定,但是无法识别暂停后附加的 exec 方法,但是,如果我像第一个那样删除 exitBlockOnFail 部分,则不会出现此错误.

enter image description here

PS:这些是我的进口

import io.gatling.core.Predef.{exec,_}
import io.gatling.core.structure.ChainBuilder

非常感谢任何帮助或澄清。 非常感谢。

更新

根据 Stephane 的回答,我们遗漏了其中一个导入。

import io.gatling.core.Predef._     // required for gatling core structure DSL

现在可以使用了。

解决方法

您是否破坏了 DSL 导入?如果是,请检查 doc