JMeter未知的arg?t

时间:2016-08-09 13:47:00

标签: apache jmeter performance-testing load-testing

我正在尝试以非gui模式运行JMeter(从命令行)。

我在很多地方看到过,包括官方文档在内,以下命令会按照我的意愿行事:

jmeter -n –t test.jmx -l testresults.jtl

但是,我得到了“t”参数的非法参数异常。请参阅下面的我的控制台输出:

Console screenshot showing output from the command

以下是保存到jmeter.log的输出:

2016/08/09 14:41:59 INFO  - jmeter.util.JMeterUtils: Setting Locale to en_GB 
2016/08/09 14:41:59 INFO  - jmeter.JMeter: Loading user properties from: C:\apache-jmeter-3.0_src\apache-jmeter-3.0\bin\user.properties 
2016/08/09 14:41:59 INFO  - jmeter.JMeter: Loading system properties from: C:\apache-jmeter-3.0_src\apache-jmeter-3.0\bin\system.properties 
2016/08/09 14:41:59 FATAL - jmeter.JMeter: An error occurred:  java.lang.IllegalArgumentException: Unknown arg: –t
    at org.apache.jmeter.JMeter.initializeProperties(JMeter.java:746)
    at org.apache.jmeter.JMeter.start(JMeter.java:385)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.jmeter.NewDriver.main(NewDriver.java:259)

7 个答案:

答案 0 :(得分:12)

所以问题是我如何将命令输入命令行。

当我复制并粘贴我的命令时,它被从网页复制到记事本中,然后复制到命令行中。我错误地认为记事本会编码正确的字符。

因为-n工作但不是-t而有点令人困惑。愚蠢的错误!

答案 1 :(得分:2)

将脚本文件“TwoMinuteTest.jmx”放入JMeter bin目录,然后尝试以下命令:

jmeter -n –t TwoMinuteTest.jmx -l testresults.jtl

答案 2 :(得分:1)

您必须将.jmx文件保存在jmeter bin文件夹中,并且可以在任意位置更改日志文件位置。

jmeter -n –t TwoMinuteTest.jmx -l C:\ users \ desktop \ Log.Txt-将创建一个文本文件作为日志。

jmeter -n –t TwoMinuteTest.jmx -l C:\ users \ desktop \ Log.Csv-将创建一个Csv文件作为日志。

jmeter -n –t TwoMinuteTest.jmx -l C:\ users \ desktop \ Log.Xls-将创建一个Xls文件作为日志。

如果该位置没有该日志文件,它将在运行测试时创建一个新文件。

答案 3 :(得分:0)

代替:

jmeter -n –t test.jmx -l testresults.jtl

您应该使用:

jmeter -n –t "test.jmx" -l "testresults.jtl"

答案 4 :(得分:0)

在notepad ++中打开.bat文件,如果您的文件具有任何特殊字符,请使用以下格式从菜单中选择“编码为UTF-8编码”: jmeter -n –t“ testscript.jmx” -l“ results_test.jtl”

答案 5 :(得分:0)

我只是遇到了同样的错误,结果发现该字符不是常规的连字符(又称“减号”),而是一个连字符,而且它们看起来足够相似,让我看不到。

事实证明,Linux版本的JMeter(或Linux本身)非常挑剔,并且仅接受普通的常规连字符。而Windows版本的JMeter可以同时处理这两个字符。我从网站上的命令行示例复制粘贴,我想那个人已经在Windows上运行它,而没有在Linux上尝试过。

我认为这与原始海报的情况相同。将其发布为答案,因为它仍然可能发生,并且没有答案谈到使用错误字符的可能性。

答案 6 :(得分:0)

之前我的 TimersTestPlan.jmx 有一个空格,就像这个 Timers TestPlan.jmx 当我删除空间时,它在 Windows 中对我有用。

jmeter -n -t C:\FREESOFT\JmterPlanLoc\TimersTestPlan.jmx -l C:\FREESOFT\JmterPlanLoc\Export\Clreport.csv