如何用ant将参数传递给jmeter?

时间:2018-06-14 10:38:41

标签: jenkins ant jmeter

我正在通过蚂蚁运行jmeter,但我需要传递一个参数。在控制台应用程序中,我将在启动jmeter时执行“JLocalDB = 1”。但是使用ant我不知道如何将此参数添加到我的启动命令中。什么我尝试它不起作用。

这是我尝试使用build.xml: 加上这个:

        <property name="localDB" value="0"/>

在Jmeter标签中。 Ant将测试标记为失败,但甚至没有启动它。

添加:

        <jvmarg value="-JlocalDB=0"/>

在jmeter标签中。简直失败了。什么都不做。

添加:

<jvmarg value="-DlocalDB=0"/>

在jmeter标签中。什么都不做,蚂蚁没有启动测试并说它失败了。

因为我和jenkins一起运行,所以我尝试在jlocalDB / DLocalDB / LocalDB中放入ant的启动参数。

产品是否完成了一半?我看到的每个答案都说完了我所做的事情,这显然是行不通的。

如果我通过cmd启动jmeter并在那里传递参数,它的效果非常好。但是对于蚂蚁......没有用。除非我删除参数并以默认值....

开头

知道问题是什么?

1 个答案:

答案 0 :(得分:0)

根据JMeter Ant Task documentation

  

jmeterarg用于指定其他JMeter命令行参数。唯一的属性是值。

请尝试将其设置为<jmeterarg value="-JlocalDB=0"/>设置,如:

<target name="run">
    <echo>funcMode = ${funcMode}</echo>
    <delete file="${testpath}/${test}.html"/>
    <jmeter
        jmeterhome="${jmeter.home}"
        testplan ="${testpath}/${test}.jmx"
        resultlog="${testpath}/${test}.jtl"
        jmeterlogfile="jmeter-ant.log">
        <jmeterarg value="-JlocalDB=0"/>

我使用JSR223 Sampler和以下Groovy代码快速验证了它:

println('localDB property value is: ' + props.get('localDB'))

并且该属性似乎已应用

JMeter Ant Property