zoukankan      html  css  js  c++  java
  • Jmeter在非GUI环境下传递参数(命令行&Jenkins配置)

    https://www.cnblogs.com/kill0001000/p/8078686.html

    通过cmd运行 jmeter -? 可以得到所有命令行选项(本文最后)

    其中可以看到下面 -J 的使用

    -J, --jmeterproperty <argument>=<value>
    Define additional JMeter properties

    当通过JMeter属性的方法调用变量时,需要修改变量的传入方式。普通的定义变量是:${threadsUsers}的形式。

    但是本方法是通过添加JMeter的属性,属性和参数是不同的,因此在调用中采用${__P(threadsUsers)}的形式进行调用。(注意是两个下划线

    这样就可以完成通过命令行的参数,来达到更改脚本中变量的效果了!

    jmx文件中的设置:

    ${__P(threadsUsers,5)} 并设置默认值

    Jenkins(Excute Windows batch command)

    jmeter -n -t %TestAPI%.jmx -JthreadsUsers=%threadsUsers% -JDuration=%Duration% -l result_output\%TestAPI%.jtl

    Jenkins(Excute shell)

    JVM_ARGS="-Xms1024m -Xmx2048m" $JMETER_HOME/bin/jmeter -L$loglevel -n -t $TestAPI.jmx 
    -JthreadsUsers=$threadsUsers -JDuration=$Duration -l result_output$TestAPI.jtl

    所有命令行选项:

    -h, --help
    print usage information and exit
             #打印帮助信息 
    -v, --version
    print the version information and exit
              #打印版本信息
    -p, --propfile {argument}
    the jmeter property file to use
              #运行时指定property文件,默认是使用JMETER_HOME/bin目录下的jmeter.properties,如果用户自定义有其它的配置,在这里加上
              #用法如下: -p user.properties
    -q, --addprop {argument}
    additional property file(s)
              #其它配置文件,如JVM参数等等
    -t, --testfile {argument}
    the jmeter test(.jmx) file to run
             #要运行的jmeter脚本
    -j, --jmeterlogfile {argument}
    the jmeter log file
             #指定记录jmeter log的文件,默认为jmeter.log
    -l, --logfile {argument}
    the file to log samples to
             #记录采样器Log的文件
    -n, --nongui
    run JMeter in nongui mode
             #以nongui模式运行jmeter
    -s, --server
    run the JMeter server
             #运行JMeter server
    -H, --proxyHost {argument}
    Set a proxy server for JMeter to use
             #代理服务器地址
    -P, --proxyPort {argument}
    Set proxy server port for JMeter to use
             #代理服务器端口
    -u, --username {argument}
    Set username for proxy server that JMeter is to use
             #代理服务器的用户名
    -a, --password {argument}
    Set password for proxy server that JMeter is to use
             #代理服务器用户名对应的密码
    -J, --jmeterproperty {argument}={value}
    Define additional JMeter properties
             #定义额外的Jmeter属性
    -G, --globalproperty (argument)[=(value)]
    Define Global properties (sent to servers)
    e.g. -Gport=123
    or -Gglobal.properties
              #定义发送给server的全局属性
             #如:-Gport=123 或者-Gglobal.properties(指定监听server的端口)
    -D, --systemproperty {argument}={value}
    Define additional System properties
             #定义系统属性
    -S, --systemPropertyFile {filename}
    a property file to be added as System properties
             #通过指定的property文件定义系统属性
    -L, --loglevel {argument}={value}
    Define loglevel: [category=]level 
    e.g. jorphan=INFO or jmeter.util=DEBUG
             #定义日志等级
    -r, --runremote (non-GUI only)
    Start remote servers (as defined by the jmeter property remote_hosts)
             #启动远程server(在jmeter property中定义好的remote_hosts),公在non-gui模式下此参数才生效
    -R, --remotestart server1,... (non-GUI only)
    Start these remote servers (overrides remote_hosts)
             #启动远程server(如果使用此参数,将会忽略jmeter property中定义的remote_hosts)
    -d, --homedir {argument}
    the jmeter home directory to use
                  #Jmeter运行的主目录
    -X, --remoteexit
    Exit the remote servers at end of test (non-GUI)
             #测试结束时,退出(在non-gui模式下)

     JMeter在windows系统下启动的是一个Swing GUI界面,也可以在Linux/Unix系统中作为一个命令使用。调用JMeter的 “jmeter -?”命令将打印所有命令选项的一个列表。列表如下: 
    -h, --help 打印使用信息并退出
    -v, --version 打印版本信息并推出
    -p, --propfile {argument} 使用的JMeter属性文件
    -q, --addprop {argument} 附加的属性文件
    -t, --testfile {argument} 运行的jmeter测试文件(.jmx)
    -l, --logfile {argument} 日志取样文件
    -n, --nongui 非用户界面运行JMeter
    -s, --server 运行JMeter服务器
    -H, --proxyHost {argument} 设置JMeter使用的代理服务器
    -P, --proxyPort {argument} 设置JMeter使用的代理服务器端口
    -u, --username {argument} 设置JMeter使用的代理服务器用户名
    -a, --password {argument} 设置JMeter使用的代理服务器密码
    -J, --jmeterproperty {argument}={value} 定义附加的jmeter属性
    -D, --systemproperty {argument}={value} 定义附加的System属性
    -S, --systemPropertyFile {filename} 一个属性文件被做为系统属性添加
    -L, --loglevel {argument}={value} 定义日志等级: [category=]level 例如jorphan=INFO or jmeter.util=DEBUG
    -r, --runremote 从非用户界面模式启动远程服务器
    -d, --homedir {argument} 使用的JMeter目录
    -j,--jmeterlogfile {argument} the jmeter log file
    -G,--globalproperty (argument)[=value] 定义一个JMeter属性并发往所有远程服务器。如:-Gport=123、-Gglobal.properties
    -R,--remotestart serverl,... (non-GUI only) 在指定远程服务器上运行
    -X,--remoteexit Exit the remote servers at end of test (non-GUI)

  • 相关阅读:
    ORACLE触发器具体解释
    秒杀多线程第四篇 一个经典的多线程同步问题
    Java中Integer类的方法
    九大排序算法再总结
    删除条目时的确认对话框
    VirtualBox安装及使用说明和虚拟机安装XP系统图文教程
    J2EE之验证码实现
    教你用笔记本破解无线路由器password
    vSphere HA状况:未知配置错误解决的方法
    HDU 2504 又见GCD
  • 原文地址:https://www.cnblogs.com/shengs/p/10331632.html
Copyright © 2011-2022 走看看