用于捕获sql查询的Jmeter侦听器

时间:2017-08-30 09:21:13

标签: sql jdbc jmeter

我还没有发现如何通过用户创建的测试用例来捕获sql查询。

换句话说,当我按下Jmeter中记录的测试用例的执行按钮时,我想看到在后台执行的sql查询。 这是不可能的,至少我没有找到任何侦听器在JMeter中捕获sql。

我唯一发现的是创建JDBC连接和JDBC请求http://jmeter.apache.org/usermanual/build-db-test-plan.html

这意味着向JMeter提供数据库信息,以便将JMeter连接到数据库,然后将自定义sql查询发送到此数据库以捕获结果,但这与我想要的不同。

当我在我的应用程序中运行搜索数据的函数时,以某种方式可以捕获从我创建的sql查询(可能有一个监听器)?

提前谢谢。

1 个答案:

答案 0 :(得分:0)

View Results Tree监听器显示所有取样器,包括JDBC request,在View Results Tree点击Configure按钮并检查Save Sampler Data(XML)(还应选中另存为XML格式)。< / p>

如果将其保存到日志文件(文件名字段),则可以在samplerData标记中查看SQL,

创建的日志文件包括:

<sample t="2" it="0" lt="1" ct="0" ts="1498028083895" s="true" lb="JDBC  rc="200" rm="OK" tn="name" dt="text" de="UTF-8" by="9" sby="0" sc="1" ec="0" ng="1" na="1" hn="name">
  <responseHeader class="java.lang.String">615492551, URL=jdbc:oracle:... Oracle JDBC driver</responseHeader>
  <requestHeader class="java.lang.String"></requestHeader>
  <responseData class="java.lang.String">1 updates</responseData>
  <responseFile class="java.lang.String"></responseFile>
  <samplerData class="java.lang.String">[Update Statement] update table1 set a='b' 

</samplerData>
</sample>