2014-09-02 119 views
0

我为测试Tibco EMS消息创建了JMeter测试计划。它包含1个JMS消息发布者和5个JMS消息订阅者采样器。我可以通过带有60,000个EMS消息的JMeter GUI轻松地运行它,而不会出现问题。然而,爬网,然后在约2000封邮件档时,我使用下面的本地命令在命令行模式(CLI)运行:如何控制输出到jmeter .jtl日志文件

C:\jmeter\apache-jmeter-2.9\bin\jmeter.bat -n -r -t C:\jmeter\apache-jmeter-2.9\bin\EMS-85-TestPlan.jmx -l C:\jmeter\apache-jmeter-2.9\logs\EMS-85-JMeterGUIStats.jtl 

产生的.jtl文件是88600行。我删除了.jtl命令选项,并且测试的完成速度与gui测试一样快。

如何配置JMeter以仅为“JMS消息发布程序”示例更新.jtl文件?我认为这将解决我的瓶颈问题,并提供所需的报告。

+0

是的,我使用GUI模式柚木测试,然后禁用任何报告监听器,并通过CLI模式运行实际测试。我会按要求做一个线程转储。 啊,我运行了很多测试,所以我会用jtl日志文件结果报告实际的结束条件。 可能有另一种解决此问题的方法。是否可以配置JMeter采样器来执行但不报告结果?我需要5个JMS消息订阅者采样器来清除队列中的消息,但我不关心他们的报告。希望这会避免这些更新到.jtl日志或通过gui。 – user1888167 2014-09-03 12:43:28

回答

0

使用GUI模式进行负载测试不是最佳实践。

当在GUI模式下运行它时,负载可能比NON GUI中的低。 在这种情况下,您所面临的问题可能会在您正在测试的应用程序中发现问题。

您可以在JMeter实例“停顿”时创建一个线程转储。

此外,我不明白你对88600线说什么,它是否失速?

您可以通过在想要报告的线程组下面对侦听器进行范围控制来控制报告,例如可以查看结果树输出到文件。

+0

我能够重现停滞的测试。我运行了应该发送20,000条消息给一个发送到4个队列的主题的测试。在902个实际样本被发送之后,它停滞了。以下链接显示包含线程转储,.jmx测试计划和.jtl文件的文件夹:[Google文件](https://drive.google.com/folderview?id=0B7-SwoTVeWFaY2Z0cnBkb2NzMFU&usp=sharing)。 – user1888167 2014-09-03 13:07:23

+0

哦,我注意到“Java.lang.OutOfMemoryError:无法创建新的本地线程”错误在我们的远程jmeter网格服务器上,所以我增加了每个jmeter max HEAP设置为1 MB。一个简单的测试工作,并会测试更多。我仍然想知道是否可以优化计划,也许可以通过在可能的情况下删除JMS订阅服务器日志记录到.jtl文件。 – user1888167 2014-09-03 20:52:47

相关问题