JMeter JDBC 如果从 DB 收到的值为空,则调用 returns 值作为参数名称
JMeter JDBC Call returns the value as parameter name if the value received from DB is null
我在 JMeter 中使用 JDBC 预处理器在触发 SOAP 调用之前从数据库中获取一个值,该调用需要用该信息进行丰富。
我已经分配了一个变量 XYZ
来获取从 DB 返回的值。
如果从 DB 返回一个值,我可以使用 ${XYZ_1}
成功获取该值,但是如果从 DB 返回的值什么都不是 (null)
(如在 DB 中所见),则使用 ${XYZ_1}
返回的值=13=]显示为${XYZ_1}
.
我在 Sampler 中使用这个变量作为
<Location>${XYZ_1}</Location>
例如:如果 DB returns 的值为 'California',我得到它为 <Location>California</Location>
如果 DB returns 值为空(null),该值看起来像
<Location>${XYZ_1}</Location>
.
现在我的问题是,如果 DB returns 值为空(null),我希望将该值设置为空。所以它应该像下面这样
<Location></Location>
对此有什么建议吗?
您可以修改您的 SQL 以便它 returns 为空而不是 null。
另一种选择是在 JDBC Post 处理器之后放置一个 JSR223 Post 处理器 + Groovy(或 Beanshell Post 处理器)来测试变量,如果为 null,则改为使用空字符串。
我在 JMeter 中使用 JDBC 预处理器在触发 SOAP 调用之前从数据库中获取一个值,该调用需要用该信息进行丰富。
我已经分配了一个变量 XYZ
来获取从 DB 返回的值。
如果从 DB 返回一个值,我可以使用 ${XYZ_1}
成功获取该值,但是如果从 DB 返回的值什么都不是 (null)
(如在 DB 中所见),则使用 ${XYZ_1}
返回的值=13=]显示为${XYZ_1}
.
我在 Sampler 中使用这个变量作为
<Location>${XYZ_1}</Location>
例如:如果 DB returns 的值为 'California',我得到它为 <Location>California</Location>
如果 DB returns 值为空(null),该值看起来像
<Location>${XYZ_1}</Location>
.
现在我的问题是,如果 DB returns 值为空(null),我希望将该值设置为空。所以它应该像下面这样
<Location></Location>
对此有什么建议吗?
您可以修改您的 SQL 以便它 returns 为空而不是 null。
另一种选择是在 JDBC Post 处理器之后放置一个 JSR223 Post 处理器 + Groovy(或 Beanshell Post 处理器)来测试变量,如果为 null,则改为使用空字符串。