1.ant与jmeter搭建运行时,出现“不允许匹配”处理指令目标,搞了半天,原因居然是自己修改的build_jmeter.xml里的格式错误,把前面空行去掉即可
运行成功显示
2.不想在本地cmd运用命令执行,而是结合jenkins工具运行时,在创建项目配置时,发现没有Invoke Ant选项,以及在Global Tool Configuration(全局管理工具)也没有ANT的设置,才发现自己没有安装ant插件,在系统管理工具->管理插件->可选插件里搜索Ant插件,如图显示下载成功
3.在Global Tool Configuration设置Ant
4.创建一个自由风格的项目后,配置构建参数,提交保存
5.立即构建项目后,打开控制台如下内容,发现与使用ant命令在cmd控制台实处一般是一致,则成功啦
补充:附上本人修改后的build.xml,有些是路径问题需要按照自己的实际路径作修改。我是在jmeter安装目录下创建了loadtest文件夹,存放生成报告的.jtl文件,以及报告页面的.html文件,至于jmeter-results-detail-report_21.xsl是在jmeter下的extras下的报告格式类型,直接复制过来。
<target name="run">
<antcall target="test"/>
<antcall target="report"/>
</target>
<!--加载jar包,解决显示时间问题-->
<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
</path>
<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
<testplans dir="E:\Darling\Test\tools\apache-jmeter-3.1\apache-jmeter-3.1\loadtests\" includes="*.jmx" />
<property name="jmeter.save.saveservice.output_format" value="xml"/>
<property name="jmeter.save.saveservice.assertion_results" value="all"/>
<property name="jmeter.save.saveservice.bytes" value="true"/>
<property name="file_format.testlog" value="${format}"/>
<property name="jmeter.save.saveservice.response_data.on_error" value="${funcMode}"/>
</jmeter>
</target>
<target name="report">
<tstamp> <format property="report.datestamp" pattern="yyyy-MM-dd HH:mm" /></tstamp>
<xslt
classpathref="xslt.classpath"
force="true"
in="E:\Darling\Test\tools\apache-jmeter-3.1\apache-jmeter-3.1\loadtests\jmeter_result.jtl"
out="E:\Darling\Test\tools\apache-jmeter-3.1\apache-jmeter-3.1\loadtests\jmeter_result.html"
style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl">
<!--显示dateReport的时间-->
<param name="dateReport" expression="${report.datestamp}"/>
</xslt>
<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<!--<copy todir="${jmeter.result.html.dir}">-->
<!--<fileset dir="${jmeter.home}/extras">-->
<!--<include name="collapse.png" />-->
<!--<include name="expand.png" />-->
<!--</fileset>-->
<!--</copy>-->
</target>