空手道框架重试在后台使用

KarateFramework retry using in background

我正在尝试实施重试,直到场景通过。

此代码在后台或场景中运行:

* retry until response.status == 200

但是我的场景响应代码不同,比如 200,204,404 我想重试,直到场景通过而不仅仅是状态代码检查。 因为如果我不能在后台编写,我必须将这段代码写到我的每个场景中。

我可以这样做吗?

对于这种简单的情况,我不建议“重用”。请花点时间阅读这篇文章。代码重复是可以的。真的:

那是说您可以定义一个可重用的函数并重用它。像这样:

* def isStatusOk = function(x){ return x.status == 200 || x.status == 204 }

然后你可以这样做:

* retry until isStatusOk(response)

最后,请阅读:https://twitter.com/KarateDSL/status/1364433453412851714