gpt4 book ai didi

jdbc - JMeter:将 SQL 查询的结果作为变量传递

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

我一直在阅读论坛,Apache JMeter指南和 BlazeMeter 的 The Real Secret to Building a Database Test Plan With JMeterUsing JDBC Sampler In JMeter ,但我还是有点失落。

我需要发出查询以从表中提取 Obj ID 值并将该值传递到 HTTP READ 请求中。我已经完成了以下设置:

JDBC 请求
变量名称:Pool-1
查询类型:Select 语句
查询:select distinct ObjId from dbo.CommonRuleSet where Name like '%ABC%'; 参数。值(value)观:
参数。类型:
变量名:abcObjId
结果变量名称:abcCommonRule = vars.getObject("resultObject").get(0).get("ObjId"); 查询超时(s):5000
处理结果集:存储为对象

执行时的结果是:ObjId1136682203
我想弄清楚如何将此 ObjId 值作为变量传递以附加 URL .

HTTP 请求
数据库:端口/应用服务器/../../crud/CommonRuleSet/ ???

我试过附加使用:

  • 变量名称值:${abcObjId}
  • 结果变量名称:${abcResult}

  • 每次,JMeter 都不会翻译导致解析器错误的变量。 (例如, http://database:port/.../.../.../crud/CommonRuleSet/ ${abcResult} )

    我只是不明白如何获取我成功查询的结果并将其作为变量传递给 HTTP 请求。非常感谢任何见解/启蒙!

    最佳答案

    解决方案是:
    //数据库:端口/.../.../.../crud/CommonRuleSet/${abcObjId _1 })。

    我想我在发布我的问题之前没有浏览足够的 BlazeMeter 页面。我在 Debugging JDBC Sampler Results in JMeter 上找到了解决方案.

    解释变量名和结果变量名之间的区别和用法的部分完全不同。我现在明白结果变量名称是 HashMaps 的 ArrayList,在这种情况下我不需要。
    所以我更改了结果变量名称字段 来自: abcCommonRule = vars.getObject("resultObject").get(0).get("ObjId"); 至:结果,

    接下来,由于我想直接访问变量名 'abcObjId',我修改了附加 URL 的变量 来自: ${abcObjId} 至: ${abcObjId_1}。我离得那么近……那么近……
    感谢 dmitri-t 和 Blazemeter 的人们。

    关于jdbc - JMeter:将 SQL 查询的结果作为变量传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36041893/

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