TA的每日心情 | 无聊 2015-4-27 10:31 |
---|
签到天数: 12 天 连续签到: 1 天 [LV.3]测试连长
|
4#
楼主 |
发表于 2015-3-13 00:32:01
|
只看该作者
我已经在谷歌大师下解决了。你建立好用例保存的jmx是不会多线程的,除非你保存前设置了threads,但是那样不灵活。为了实现一个脚本,多个场景的复用。
所以,这里就要使用到了参数化的东西了。
threads 和loop 和相关你想设置的地方设置好参数,然后在ant的build.xml中的jmeter字段配置好property。比如我这样设置:
线程组中的threads这里设置${__property(run.threads,,1)} ----表示从run.threads读取参数,默认值为1
而在ant的build.xml中这样设置(加在 <jmeter 加在这里></jmeter>):
<property name="run.threads" value="100"/> ---表示启动100个线程
如果你想更灵活,使用ant的参数吧,上面的改成这样:
<property name="run.threads" value="${thread}"/>
在ant的启动命令中加入:-Dthread 100 表示参数
run任务配置完整如下: <target name="run">
<echo>funcMode = ${funcMode}</echo>
<delete file="${testpath}/${test}.html"/>
<delete file="${testpath}/${test}.jtl"/>
<jmeter
jmeterhome="${jmeter.home}"
testplan ="${testpath}/${test}.jmx"
resultlog="${testpath}/${test}.jtl">
<!--
<jvmarg value="-Xincgc"/>
<jvmarg value="-Xmx128m"/>
<jvmarg value="-Dproperty=value"/>
<jmeterarg value="-qextra.properties"/>
-->
<property name="run.threads" value="${thread}"/>
<property name="request.loop" value="1"/>
<!-- Force suitable defaults -->
<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.text" value="true"/>
<property name="jmeter.save.saveservice.response_data.on_error" value="${funcMode}"/>
</jmeter>
</target>
ant启动完整命令:
ant -f build.xml run -Dthread 100
|
|