【问题标题】:JSR223 assertion on JDBC update request in JmeterJmeter 中关于 JDBC 更新请求的 JSR223 断言
【发布时间】:2022-01-28 02:42:24
【问题描述】:

我有更新数据库中某些值的 JDBC 请求。对于这个请求,我有两个子断言一个response 和一个JSR223 分别检查响应代码和更新值。但是我在视图结果树中收到一个失败的请求(红色),因为我认为 JSR223 在更新之前断言了值。当我手动检查数据库时,值正在更新。

我假设通过将响应断言放在 JSR223 断言之前,这会很好,因为 JSR223 会在请求完全执行时断言。

当我禁用 JSR223 时,我得到响应断言通过,因此结果树中的绿色请求。

在这种情况下如何断言 JDBC 请求更新的值?

【问题讨论】:

    标签: java jdbc jmeter assertion


    【解决方案1】:
    1. 根据JMeter Test Elements Execution Order:断言在采样器之后执行,因此 JDBC 请求采样器“完全”执行,并且仅在断言执行之后。
    2. 断言被颠倒执行
    3. 如果任何断言失败 - 采样器将被标记为失败
    4. 特定于 JSR223 断言:如果您犯了错误并且代码无法编译 - 断言将失败并导致相关采样器失败。如果需要,请参阅Scripting JMeter Assertions in Groovy - A Tutorial 文章了解更多详情。

    所以仔细检查你的断言代码并检查:

    1. Assertion Results监听输出
    2. JMeter Log file

    【讨论】:

    • 感谢您的信息。实际上问题在于,更新断言正在检查在测试计划开始时编写的选择 JDBC 请求。没有意识到我需要再次发送一个选择 JDBC 请求,而不是利用之前的请求。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多