jmeter性能测试实例2解析--linux环境

压测准备

本地开发环境⽣成脚本,上传压测机器 (修改参数化文件路径、请求地址)

内⽹环境,⾮GUI下压测

停⽌其他⽆关资源进程

压测机和被压测机器隔离(避免资源争夺:内存、CPU、磁盘IO、网络IO)

高并发下的jmeter集合点实战

多⽤户并发测试,但真正的并发其实是不存在的,⽤⼯具模 拟并发 ;

测试“线程数”是并发⽤户数,启动需要时间,不是并发 同⼀时刻访问;

常规压测需要模拟全部⽤户同⼀时刻访问,⽐如 秒杀 案例场景; 

需求:先让全部请求 同时集合在⼀起,然后再⼀起访问,实现真正的并发,引入Jmeter的同步定时器(集合点)

  • 环境准备
  1. 安装JDK1.8版本,版本检查命令:java -version

    

   2. 下载及安装jmeter;官网下载即可https://jmeter.apache.org/download_jmeter.cgi

    

   3. rz命令将安装包apache-jmeter-5.5.tgz上传到Linux服务器                                               

 

 

    解压即可运行:tar zxvf apache-jmeter-5.5.tgz

    根据自己测试情况,确认是否需要修改jmeter本身内存,Linux环境下修改/apache-jmeter-5.5/bin/jmeter文件(win环境meter.bat文件)里的行“

: "${HEAP:="-Xms1g -Xmx5g -XX:MaxMetaspaceSize=256m"}"     初始1g内存,最大5g内存,

    

 

 

  • 压测试流程
  1. 先在win环境 把压测脚本调试好(是否需要用 持续时间断言Duration Assertion、同步定时时Synchroniziong Ttimer也就是集合点设置)

    

   2.脚本上传到Linux服务器指定位置  /root/scriptcd,

 

    修改脚本文件***.jmx里的loginToken、并发用户数、集合点的用户数  

 

    

 

    

 

    

 

 

    3. 创建两个目录/temp/jtl、/temp/result 用来存报测试报告并开始压测试,

   压测所执行的命令写入了脚本里了 

#!/bin/bash
rm -f temp/jtl/result.jtl
rm -rf /root/temp/result/*

sh /root/sortware/apache-jmeter-5.5/bin/jmeter -n -t /root/script/promotion20230221.jmx -l /root/temp/jtl/result.jtl -e -o /root/temp/result

   脚本执行完后,压缩及下载命令写入了脚本,如下所示:  

#!/bin/bash
rm -f result.tgz
tar czf result.tgz result/
Time=`date +%Y%m%d%H%M%S`
firfix='result'
filename=${firfix}${Time}.tgz

#echo $filename
mv result.tgz $filename
sz $filename

     4.监控分析、性能调优、测试优化后结果

   

posted @ 2023-03-01 16:48  LCX测试小姐姐  阅读(101)  评论(0编辑  收藏  举报