gpt4 book ai didi

scala - 如何在 "exec"内使 Gatling 测试失败?

转载 作者:行者123 更新时间:2023-12-04 14:58:13 24 4
gpt4 key购买 nike

带有 exec 链的 Gatling 场景。请求后,返回的数据被保存。后来它被处理,根据处理结果,它应该失败或通过测试。

这似乎是最简单的可能场景,但我找不到任何可靠的信息如何从 exec 块中使测试失败。断言打破了场景,看起来像是加特林(如:异常抛出不仅没有通过测试)。

例子:

// The scenario consists of a single test with two exec creating the execChain
val scn = scenario("MyAwesomeScenario").exec(reportableTest(

// Send the request
exec(http("127.0.0.1/Request").get(requestUrl).check(status.is(200)).check(bodyString.saveAs("MyData")

// Process the data
.exec(session => {
assert(processData(session.attributes("MyData")) == true, "Invalid data");
})
))

在“监护人失败,正在关闭系统”的某处场景之上。

现在这似乎是一个有用的、经常使用的事情——我可能遗漏了一些简单的东西。怎么做?

最佳答案

您必须遵守 Gatling API。

  • 通过检查,您不会“失败”测试,而是“失败”请求。如果您想在整个测试中失败,您应该查看 Assertions API 和 Jenkins plugin .
  • 您只能在请求站点执行检查,而不能稍后执行。一个很好的原因是,如果您像正在做的那样将 bodyString 存储在 Sessions 中,您将最终使用大量内存并且可能会崩溃(仍然被引用,因此不能被垃圾回收)。您必须执行您的 processData在支票中,通常在 transform可选步骤。
  • 关于scala - 如何在 "exec"内使 Gatling 测试失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25622470/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com