Jmeter - 如何从命令行查看 运行 测试后的采样器数据?

Jmeter - How do I see sampler data following running a test from Command line?

我有一个手动测试成功 运行,并且确信它 运行 是正确的。

我现在通过 linux 命令行通过参数化将其转换为 运行。

测试成功完成,我成功存储了 'Results Tree',在打开存储的 'Results Tree' 文件时,我可以看到所有测试都已通过。

但是,我看不到任何采样器数据,这让我深感怀疑测试实际上并不是 运行,只是请求正在发送并 returned正确的 return 代码。

我需要能够证明某些值正在被提取和测试。

我尝试插入 Beanshell Post 处理器,但这产生的警告和错误消息多于它提供的有用信息。

非常感谢任何帮助。

这是设计使然,JMeter 不存储响应数据以避免磁盘 IO 开销,因为在高负载和大量响应的情况下,它可能成为会破坏测试的瓶颈。

如果出于某种原因需要启用它,可以将接下来的两行添加到 user.properties 文件(位于 JMeter 的 "bin" 文件夹中)

jmeter.save.saveservice.output_format=xml
jmeter.save.saveservice.response_data=true

需要重新启动 JMeter 才能获取属性。

one-time ad-hoc 属性更改的另一种方式是通过 -J command-line 参数传递它们,例如:

jmeter -Jjmeter.save.saveservice.output_format=xml -Jjmeter.save.saveservice.response_data=true -n -t test.jmx -l result.jtl

参考文献:


UPD:如果您需要请求数据以及请求和响应 headers:

jmeter.save.saveservice.output_format=xml
jmeter.save.saveservice.response_data=true
jmeter.save.saveservice.samplerData=true
jmeter.save.saveservice.requestHeaders=true
jmeter.save.saveservice.url=true
jmeter.save.saveservice.responseHeaders=true