在 JMeter 中将变量从一个 jdbc 请求发送到另一个 jdbc 请求

Send variable from one jdbc request to another jdbc request in JMeter

在我的测试计划中,我有 3 个 JDBC 连接请求,从第二个请求的响应我想将变量传递给第三个请求,我尝试使用 escape charactervars.get

第二次获取请求group-transaction-id

第三次使用 group-transaction-id 获取 details 的请求

尝试过:

SELECT DISTINCT L.audit_context_key,K.event_log_value,L.event_log_id,L.event_logged_dttm FROM event_log L,event_log_keys K
WHERE L.audit_context_key LIKE 'vars.get('GROUP_TRANSID_1')%'
AND L.event_process='Interfaces/GenericPublishingService/StarterProcesses/GPFAdapterSubscriber.process'

还有

SELECT DISTINCT L.audit_context_key,K.event_log_value,L.event_log_id,L.event_logged_dttm FROM event_log L,event_log_keys K
WHERE L.audit_context_key LIKE '''vars.get('''GROUP_TRANSID_1''')%'''
AND L.event_process='Interfaces/GenericPublishingService/StarterProcesses/GPFAdapterSubscriber.process'

没有任何效果

我想你的问题已经有了答案,

第一个 vars.get 是您不能在查询中使用的脚本元素,第二个 escape character 将不起作用。所以你需要像在 Jmeter 中一样将它作为参数传递,

SELECT DISTINCT L.audit_context_key,K.event_log_value,L.event_log_id,L.event_logged_dttm FROM event_log L,event_log_keys K
WHERE L.audit_context_key LIKE '${GROUP_TRANSID_1}%'

或者如果你真的想使用vars.get那么请使用下面的,

SELECT DISTINCT L.audit_context_key,K.event_log_value,L.event_log_id,L.event_logged_dttm FROM event_log L,event_log_keys K
    WHERE L.audit_context_key LIKE '${__groovy(vars.get('GROUP_TRANSID_1'),)}%'