• JMeter non-GUI 模式执行


    在用JMeter进行压测时,为了少占用客户端资源,一般不使用带有界面的GUI模式运行。所以在进行正式的压测时一定要使用non-gui模式运行,如果并发数很高或者客户端的硬件资源比较一般的话,还可以以server模式用多个client进行分布式测试。

    命令行模式的优势

    • 没有交互界面,节约系统资源
    • 只需启动命令行,输入命令执行即可,可以远程或分部执行
    • 易于持续集成,通过shell脚本或批处理命令执行,易于生成报告

    命令参数

    命令参数 命令解释
    -n 设置命令行模式
    -t

    指定JMX脚本路径

    (当前目录or绝对路径or相对路径)

    -l

    指定结果文件路径(jtl or csv)

    (路径不存在将自动创建)

    -j

    指定执行日志路径

    (路径不存在不会自动创建,同时将日志输出至命令行控制台)

    -r

     设置分布式(远程)执行

    服务器列表由 JMETER_HOMEinjmeter.properties中remote_hosts 指定

    -R

    指定远程(分布式)服务器列表

     配置形式同remote_hosts 

    -g

     指定测试结果文件路径,仅用于生成测试报表

    csv结果文件

    -e 设置测试完成后生成测试报表 
    -o

    指定测试报表生成文件夹,文件夹必须为空或不存在 

    -H

    指定代理服务器域名或代理服务器IP

    -P 指定代理服务器端口号

    命令执行

    1. 在 jmeter.properities文件中把#jmeter.save.saveservice.output_format=xml注释掉
    2. 开始—运行—cmd,进入到命令行模式;
    3. cd到JMeter的bin目录下,(如果配置过JMeter的环境变量,在任意目录下都可以执行); 
    4. 执行命令:
    1 jmeter -n -t D:XXXXscripts	est.jmx -l D:XXXXjmeter-Non-GUI-resultscsvhtml.csv -e -o D:XXXXjmeter-Non-GUI-resultshtml -j D:XXXXjmeter-Non-GUI-resultslog1-log.log

    通过传参就可以实现不同线程数和持续时间的场景测试

    1 jmeter -n -t .scripts	est.jmx -J threads=10 -J duration=10  -l .jtl	est001.jtl -j .jtl	est001.log
  • 相关阅读:
    [Mise] Refetch API data when a state value changes with the `$watch` property in Alpine JS
    Android之用自定义的shape去实现shadow效果
    http抓包以及网速限定
    ios成长之每日一遍(day 7)
    ios成长之每日一遍(day 6)
    ios成长之每日一遍(day 5)
    ios成长之每日一遍(day 4)
    ios成长之每日一遍(day 3)
    ios成长之每日一遍(day 2)
    ios成长之每日一遍(day 1)
  • 原文地址:https://www.cnblogs.com/hereisdavid/p/13806236.html
Copyright © 2020-2023  润新知