我有一个功能文件需要登录凭据才能进行测试。在空手道中,我添加了一个callonce read(login.feature)
,这样登录只会发生一次,并且可以将凭据保存在空手道中。
但是,当我在 Karate-Gatling 中运行相同的功能文件时,我遇到了错误:
18:34:58.325 [GatlingSystem-akka.actor.default-dispatcher-4] INFO com.intuit.karate - >> lock acquired, begin callonce: read('login.feature')
18:34:58.357 [GatlingSystem-akka.actor.default-dispatcher-4] INFO com.intuit.karate - >> lock acquired, begin callonce: read('login.feature')
18:34:58.357 [GatlingSystem-akka.actor.default-dispatcher-4] INFO com.intuit.karate - >> lock acquired, begin callonce: read('login.feature')
================================================================================
2019-05-06 18:34:58 1s elapsed
---- Requests ------------------------------------------------------------------
> Global (OK=0 KO=0 )
---- test1 ---------------------------------------------------------------------
[##########################################################################]100%
waiting: 0 / active: 0 / done: 1
================================================================================
有一种解决方法,我首先执行 login.feature,然后将登录令牌提供给其他功能文件。但是,我想知道它是否只是我,或者是callonce
(并且可能call
)功能不受支持。我怀疑 Gatling 不会等待调用返回并简单地关闭测试场景。