• Jmeter(十五):jmeter场景的运行方式详解


    jmeter场景的运行方式(GUI运行和命令行运行)


    运行方式

    GUI运行:通过图形界面方式运行,该运行方式的可视化界面及监听器动态展示 结果都比较消耗负载机资源,建议大并发时不用,一般进行脚本调试;

    命令行运行:通过jmeter命令行工具运行(性能测试建议通过命令行执行脚本)

    运行架构

    本地运行:运行本地一台Jmeter机器,所有的请求通过该机器发送。

    远程运行:用一台Jmeter控制机控制远程的多台机器来产生负载。控制机与负载 机之间通过RMI方式来完成通信。

    同时,我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺,免费领取

    软件测试视频教程观看处:

    华测教育软件测试进阶全套视频教程(2023全网最新版,软件测试进阶自学必备)

    jmeter的GUI运行

    1、通过在jmeter的GUI上的倒三角图标运行或者通过菜单栏中的运行启动执行脚本;如下图

    注意:

    jmeter可视化界面及监听器动态展示 结果都比较消耗负载机资源,建议大并发时不用会对性能测试结果产生影响,一般进行测试脚本的创建和调试;

    再进行性能测试的时候在启动jmeter时dos窗口也会给出提示;如下图:

    意思大概为:不要使用GUI模式进行负载测试,GUI只用于Test创建和Test调试。  对于负载测试,使用CLI模式(非GUI);

    jmeter命令行运行(性能测试建议通过命令行执行脚本)

    jmeter命令行工具部分参数说明:

    -n:非GUI方式运行。
    -t:指定运行的测试脚本地址与名称(后缀为.jmx文件),可以是相对或绝对路径
    -h:查看帮助
    -l:记录测试结果到文件(后缀为.jtl),指定名称与路径,可以是相对或绝对路径
    -r:开启远程负载机,远程负载机列表在jmeter.properties文件中指定
    -R:开启远程负载机,可以指定负载机IP,会覆盖jmeter.properties中的设置
    -X:停止远程执行
    -J:定义Jmeter属性,等同于在jmeter.properties中设置(参考下方命令行运行实战的第6个命令详解)
    -G:定义Jmeter全局属性,等同于在Global.properties中设置,线程间可相互共享
    -e:在脚本运行结束后生成html报告
    -o:保存html报告的地址
    -g:指定已存在的测试结果文件

    常用的命令如下:

    jmeter -n -t 脚本路径

    jmx -l 测试结果路径

    jtl -e -o html结果路径(空文件夹);(备注:可不写-e -o 后面的命令先生成jtl文件,再通过-g参数把jtl文件生成html报告)

    注意:Jmeter使用命令行运行时间较长的时候,2小时以上,会发现jmeter命令行到时间仍然未停止,但实际上请求是没有发的(不会出现end of run),此时如果配置了网页版报告,就会不能生成(jtl报告能生成)。

    那可以使用-g 命令加载 jtl 文件生成网页版报告
    命令:jmeter -g jtl文件路径 -o html空文件夹

    Jmeter命令行运行实战

    1、本地运行脚本并生成测试报告,其中测试报告的后缀名为jtl
    jmeter -n -t 脚本路径 -l 测试报告路径

    2、远程运行脚本并生成测试报告,其中测试报告的后缀名为jtl
    jmeter -n -t 脚本路径 -r -l 测试报告路径

    3、远程运行脚本并生成测试报告,其中测试报告的后缀名为jtl
    jmeter -n -t 脚本路径 -R 负载机IP -l 测试报告路径

    4、本地运行并生成网页版测试报告,其中测试结果路径为空目录
    jmeter -n -t 脚本路径 -l 测试报告路径 -e -o 测试结果路径

    5、把jtl格式的测试结果文件转换为html格式
    jmeter -g 测试结果路径 -o html报告路径

    6、本地运行脚本并生成测试报告,把线程数和循环次数在命令行配置
    jmeter -n -t 脚本路径 -l 测试结果路径 -JthreadNum=50 -JloopNum=10

    要完成上述第6个实战的操作生效,也就是jmeter命令行参数 -J的用法;如下

    6.1 利用函数助手对话框的 P 函数设置获取命令行属性

    6.2 把生成的函数通过用户定义的变量配置

    6.3 把用户定义的变量放入需要使用到的地方

    6.4 在命令行窗口执行的时使用-J参数;如下:

    写在最后

    PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

    ☑ 240集-零基础到精通全套视频课程
    ☑ [课件+源码]-完整配套的教程
    ☑ 18套-测试实战项目源码
    ☑ 37套-测试工具软件包
    ☑ 268道-真实面试题
    ☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)

    这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

     

  • 相关阅读:
    慕尼黑主题活动!亚马逊云科技生成式AI全新解决方案,引领未来移动出行领域
    在线流程图和思维导图开发技术详解(四)
    Linux ssh协议
    基于AD Event日志检测LSASS凭证窃取攻击
    VM虚拟机 13.5 for Mac
    什么是内部类?
    火车头采集器文章组合聚合
    通过HTTP来总结网络编程知识
    ubuntu16因swap分区uuid错误启动慢排查
    记一次Redis Cluster Pipeline导致的死锁问题
  • 原文地址:https://blog.csdn.net/cs888zsy/article/details/134079125