需要有关上述错误的帮助 当我尝试将参数从jenkins传递给ant时,我收到以下错误:
"No public execute() in class org.programmerplanet.ant.taskdefs.jmeter.Arg"
由于我是詹妮丝蚂蚁整合的新手,我没有太多的想法 任何建议都会有很大的帮助。
我的蚂蚁脚本是:
<project basedir=".">
<property environment="env"/>
<property name="jmeter-home" location="D:/apache-jmeter-2.7"/>
<property name="THREADS" value="${env.THREADS}"/>
<path id="ant.jmeter.classpath">
<pathelement location="${jmeter-home}/extras/ant-jmeter-1.0.9.jar" />
</path>
<taskdef
name="jmeter"
classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"
classpathref="ant.jmeter.classpath" />
<taskdef
name="jvmarg"
classname="org.programmerplanet.ant.taskdefs.jmeter.Arg"
classpathref="ant.jmeter.classpath"/>
<target name="clean">
<delete dir="results"/>
<delete file="jmeter.log"/>
<mkdir dir="results/jtl"/>
<mkdir dir="results/html"/>
</target>
<target name="Product" depends="clean" >
<jmeter jmeterhome="d:/apache-jmeter-2.7"
resultlogdir="results/jtl"
testplan="D:\Program Files\....\Test.jmx" />
<jvmarg value ="-DTHREADS"/>
<xslt
in="${basedir}/results/jtl/Test.jtl"
out="${basedir}/results/html/Test.xml"
style="${jmeter-home}/extras/jmeter-results-report_21.xsl"/>
</target>
答案 0 :(得分:0)
看起来您还没有另外定义jvmarg
taskdef。
您已为THREADS声明了属性:
<property name="THREADS" value="${env.THREADS}"/>
另外在jmeter
任务集中
<property name="jmeter.threads" value="${THREADS}"/>
在ant的命令行中设置所需的线程数:
ant -f build.xml -DTHREADS=N
您也可以使用jmeterarg
nested element:
jmeterarg 用于指定其他JMeter命令行参数。该 只有属性才是值。