Apache JMeter未知参数?t

Apache JMeter未知参数?t,apache,jmeter,performance-testing,load-testing,Apache,Jmeter,Performance Testing,Load Testing,我正在尝试从命令行以非gui模式运行JMeter 我在很多地方都看到过,包括官方文档,下面的命令可以满足我的要求: jmeter -n –t test.jmx -l testresults.jtl 但是,对于t参数,我得到了一个非法的参数异常。有关我的控制台输出,请参见以下内容: 以下是保存到jmeter.log的输出: 2016/08/09 14:41:59 INFO - jmeter.util.JMeterUtils: Setting Locale to en_GB 2016/08/0

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

我在很多地方都看到过,包括官方文档,下面的命令可以满足我的要求:

jmeter -n –t test.jmx -l testresults.jtl
但是,对于t参数,我得到了一个非法的参数异常。有关我的控制台输出,请参见以下内容:

以下是保存到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)

所以问题是我是如何将命令放入命令行的

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


只是有点混乱,因为-n起作用了,而不是-t。愚蠢的错误

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


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

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

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

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

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

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

而不是:

jmeter -n –t test.jmx -l testresults.jtl
你应使用:

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

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

我刚刚得到了同样的错误,结果是这个字符不是一个普通的连字符,也就是减号,而是一个破折号,它们看起来很相似,我没有注意到

事实证明,JMeter的Linux版本或Linux本身非常挑剔,只接受普通的连字符。而Windows版本的JMeter同时处理这两个问题。我从一个网站上的命令行示例复制粘贴的内容,我猜那个人是在Windows上运行的,而不是在Linux上尝试的


我想这和原来的海报是一样的。将此作为一个答案发布,因为它仍然可能发生,并且没有任何答案谈到使用错误字符的可能性。

将脚本文件twominettest.jmx放入JMeter bin目录,然后尝试以下命令:JMeter-n–t twominettest.jmx-l testresults.jtlI我发誓我之前尝试过,但没有成功。我又试了一次,但还是没用。然后我删除了-t并再次打印出来,它成功了!!键入命令和从文本编辑器或其他地方复制命令之间有细微的区别吗?如果你愿意,请将其粘贴在答案中,我会在可能的时候标记出来。你应该接受你的答案,这样其他人就会明白它对你有效。如果网站允许,我会这样做@大慧,谢谢。嗨,谢谢你的回答。我已经测试过了,当我尝试将命令复制并粘贴到控制台时出现了问题。您想解释一下这有什么帮助吗?这是正确的!