无法通过jmRun将参数从build.gradle文件传递到.jmx文件

时间:2019-02-12 13:22:53

标签: gradle jmeter build.gradle gradlew

我的.jmx文件遇到多个问题。

我正在使用bzm并发线程组

1)它无法识别传递用户定义值的标准格式 例如:$ {__ P(SERVER_NAME,localhost)}而不是将“ localhost”传递给我的脚本,而是将“ $ {__ P(SERVER_NAME,localhost)}”附加到我的网址中。

仅传递值即localhost后,就可以正常工作

2)另外,iam从build.gradle文件运行我的jmeter脚本,并且iam无法传递它们的网址和其他详细信息

| SERVER_NAME | $ {__ P(SERVER_NAME,localhost)} | ->此代码不起作用 | SERVER_NAME | localhost | ->此代码运行正常

jmeter {
jmTestFiles = [file("src/main/Jmetrscript.jmx")]
jmSystemPropertiesFiles= [file(path of my properties file)] //to add additional system properties

jmUserProperties = ["SERVER_NAME ="+System.getProperty('SERVER_NAME','localhost'), "SERVER_PORT ="+System.getProperty('SERVER_PORT','9080') ]

enableExtendedReports = true //produce Graphical and CSV reports

}

当我使用gradlew jmRun -DSERVER_NAME = localhost运行它时,它没有传递值。

1 个答案:

答案 0 :(得分:0)

按照JMeter Gradle Plugin - Advanced Usage

  

受支持的JMeter命令行参数(see full list here):

-p, --propfile {argument}, the jmeter property file to use
-q, --addprop {argument}, additional property file(s)
-t, --testfile {argument}, the jmeter test(.jmx) file to run
-J, --jmeterproperty {argument}={value}, Define additional JMeter properties
-D, --systemproperty {argument}={value}, Define additional System properties
-S, --systemPropertyFile {filename}, a property file to be added as System properties
-r, --runremote (non-GUI only), Start remote servers (as defined by the jmeter property remote_hosts)
-G, --globalproperty (argument)[=(value)], Define Global properties (sent to servers), e.g. -Gport=123,  or -Gglobal.properties

因此,您应该通过-J命令行参数传递JMeter属性,例如:

jmRun -JSERVER_NAME=localhost etc

参考文献: