首页 > 其他分享 >JMeter+Jenkins分布式压测持续集成

JMeter+Jenkins分布式压测持续集成

时间:2023-03-22 19:23:07浏览次数:58  
标签:脚本 jmx jmeter 压测 number 参数 Jenkins JMeter 分布式

 Jenkins

job配置

  • 参数化构建

  • 运行分布式shell脚本:sh ...

  • 生成测试报告

JMeter

性能脚本  

编写jmeter脚本/自定义Java脚本,脚本参数化,并且可带参数命令行执行

  • 自定义Java脚本

  • jmeter脚本

  • 带参数命令行执行脚本 https://www.cnblogs.com/ww-xiaowei/p/16091236.html

      • 命令行运行 jmeter -n -t test.jmx -l res.jtl -e -o res/

        • -n: 命令行模式启动

        • -t:jmx脚本路径

        • -l:生成的jtl脚本路径

        • -e -o:生成html报告,指定路径

        • -r:分布式执行,slaver为jemter.properties配置的

        • -R:分布式执行,指定slaver的ip和port

      • 带参数动态执行

    -J 加上脚本设置的变量名=N,例如线程数的变量名是concurrent_number(在脚本中参数化写法:${P(count_number,1)} 用到了P()函数来获取命令中指定的属性值,默认值是1),在命令行指定10个线程数:-Jconcurrent_number=10 (位置放在脚本文件后面)

    jmeter -n -t 01login.jmx-Jconcurrent_number=10-l 01resLogin.jtl -e -o 02res

    若有多个变量,分别指派值,例如:循环次数为5 -Jcycles=5

    jmeter -n -t 01login.jmx-Jconcurrent_number=10-Jcycles=5-l 01resLogin.jtl -e -o 02res

 分布式执行的shell脚本

  • 设置脚本参数

  • 设置各报告路径

  • 执行分布式jmx脚本

  • 后续处理(删除不需要的报告等)

瓶颈 

  • master将请求分发给slaver,受网络限制

  • master一直在收集和存储slaver的报告数据,受网络和磁盘写入速度影响

标签:脚本,jmx,jmeter,压测,number,参数,Jenkins,JMeter,分布式
From: https://www.cnblogs.com/yjh1995/p/17245134.html

相关文章

  • jmeter操作数据库增删改查的注意事项
    一,场景1.在jmeter造数据后,可通过数据库查询数据库是否新增数据,判断脚本执行是否成功。2.有些数据新增不可重复,因此脚本执行后需要将新增的数据删除,才能再次执行脚本。二......
  • 安装Jenkins
     #105whichgit/usr/bin/gitwhichjava/usr/bin/javawhichmvn/opt/apache-maven-3.8.7/bin/mvnwhichjenkins/usr/bin/jenkins安装jdk安装git安装......
  • 性能测试技术笔记(三):如何设计一个压测平台
    转载:https://www.cnblogs.com/imyalost/p/17031603.html前面两篇笔记介绍了如何快速上手压测项目以及压测前准备测试环境和测试数据的一些方法。这篇文章,我想分享下关于......
  • jenkins jvm内存调整以及一些说明
    jenkins调整jvm内存有几个配置地方,比如通过/etc/sysconfig/jenkins以及通过直接修改systemd的服务定义(以centos来说)systemd配置/usr/lib/systemd/system/jenkins.s......
  • jenkins学习笔记之十五:SonarSQube API使用
    本章主要通过SonarSQubeAPI在pipeline第一次执行时就指定自定义的质量配置和质量阈API 文档:http://192.168.1.134:9000/web_api一、编写sonarAPI(sonarapi.groovy)注......
  • jmeter常用的命令行参数
    jmeter常用的命令行 jmeter常用的命令行参数:-n 表示非GUI模式运行-t 加载jmeter脚本,指定jmeter脚本的路径,即jmx文件的路径-l 设置测试结果文......
  • Jmeter构造测试数据之 身份证号码篇
        mportjava.util.*;StringBuildergenerater=newStringBuilder();MapareaCode=newHashMap();areaCode.put("北京市",110000);areaCode.put("天津市",1......
  • Jmeter构造测试数据之 根据身份证号码计算出当前年龄
       importjava.util.*;importjava.lang.*;Stringriqi=prev.getResponseDataAsString();//获取响应结果Stringyear=riqi.substring(6,10);//截取年份String......
  • Jmeter构造测试数据之 姓名、手机号码篇
    importjava.util.*;importjava.lang.*;Stringstr="${__RandomString(3,0123456789,)}";Stringstr_xing="${__RandomString(1,赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤......
  • jmeter常用的命令行
    CLI方式:commandline命令行jmeter的脚本可以通过命令行用命令进行执行用命令行执行的优势:1、图形化界面运行的时候会占用很大的内存,而命令行不会,节省负载机的本身资源2、......