zoukankan      html  css  js  c++  java
  • Jmeter之非GUI运行压测脚本

    以下内容引用至:https://www.cnblogs.com/zichuan/p/11262997.html

    -----------------------------------------------------------------------------------------------------------------

    做性能测试的时候,有时候可能需要不停的去设置“线程组”那个界面的参数(例如线程数、循环次数、持续时间等),而每次修改-->保存-->cmd中运行总感觉麻烦,那就找一种方法可以在命令行中直接指定参数的值。

    查看相关资料实操,可以发现JMeter的测试计划在运行Sampler之前会先加载运行属性(jmeter.properties,system.properties等)文件,而且JMeter还提供了方法可以动态修改属性,在命令行中使用【-J】 来指定JMeter Properties,脚本里面使用__P() 函数来获取命令中指定的属性值,那么方法就出来了。

     

    配置说明:

    1、并发数设置为${__P(concurrent_number,1)},循环次数取消勾选Forever,设置为${__P(cycles,1)},其中后面的1是默认值,作用是执行一次来调试脚本,这是__P函数的功能(虽然我一直都是用GUI模式来调试脚本的)

    2、执行时长设置为${__P(duration,60)},默认1分钟(60s),如果同时设置了循环次数和执行时长,那么满足其中一个条件脚本就会停止。

    那么先试试吧,进入到脚本所在的目录,执行脚本,命令行如下:

    jmeter -n -t 	mpcnblgo.jmx(脚本的绝对路径)

     

     从上图可以看出,脚本执行了一次,持续了0.7s,是OK的。

    查看Jmeter的源码,可知执行次数=-1时即表示Forever。以50并发执行120s的命令行如下:(为了直观,我直接生成测试报告用web界面的形式看,否则-l后面的可以不写,-e -o后面接web可视化报告存放路径)

    jmeter -n -t C:UserszhoulinjieDesktopcnblgo.jmx -Jconcurrent_number=50 -Jduration=120 -Jcycles=-1 -l report.jtl -e -o C:UserszhoulinjieDesktop
    eport

     打开生成的测试报告文件,index.html,如下:

    注意每次跑完会生成一个report.jtl格式的文件和一个report文件夹,在下次运行之前要先把report.jtl格式的文件删除,report取个不同的名字。否则会执行失败的(我自己每次的report的命名是report+线程数数量,这样看报告的时候也好区分)。

  • 相关阅读:
    木有晚餐吃的教训暴力图的时候
    HDU1231最大连续子序列DP
    java连连看(GUI有进度条加背景音乐)
    HDU2064简单hanno塔
    HDU1232并查集入门(畅通工程)
    HDU3460Ancient Printer(trie)
    在window下搭建php+apche+masql的方法(个人的蛋疼经历,绝对可靠)
    Java学生管理系统(GUI)(又写了这种破玩意儿了老师,放过我们吧,能不能来点新意)
    VUE使用elpagination添加分页功能
    JS 中深拷贝的几种实现方法
  • 原文地址:https://www.cnblogs.com/wulixia/p/13454559.html
Copyright © 2011-2022 走看看