jmeter+nmon+crontab简单的执行接口定时压测

一、概述

临时接到任务要对系统的接口进行压测,上面的要求就是:压测,并发2000

在不熟悉系统的情况下,按目前的需求,需要做的步骤:

  1. 需要有接口脚本
  2. 需要能监控系统性能
  3. 需要能定时执行脚本

二、观察

>针对第一点:接口脚本

需要观察系统接口的情况:

系统使用swagger文档编辑接口,这很好,可以直接引用

系统内关联接口熟悉,将需要的参数设置成变量以便调用

系统内的接口返回状态很规范,可以直接判断code&message

综上,为了效率,选择现存的开源工具执行(针对该开源工具的要就是可以使用命令行执行:jmeter)【备注:因为要定时执行】

>针对第二点:监控系统性能

观察系统服务器:

  • 系统为Linux
  • Linux上的监控工具很多,要求是可以输出到文件并可对该文件进行分析
  • 或者,可以自己编写shell脚本监控获取信息,比如:top【为了效率,选择一款自主搭配即可(当前选择:nmon)】

>针对第三点:定时执行脚本

观察脚本即将存放并执行的系统

  • Linux系统自带crontab命令可执行定时任务

三.编写

> 编写步骤:

1.使用jmeter编写接口脚本,并增加压测线程数,并编写启动脚本:StartJmx.sh

复制代码
source /etc/profile
rm -rf ****.jtl
/绝对路径/jmeter  -n -t /绝对路径/debugTest.jmx -l /绝对路径/****.jtl
sleep 10
nmonpid=`ps -ef | grep nmon | awk '{print $2}'`
kill -9 ${nmonpid}

2.服务器上安装nmon,并编写启动脚本:StartNmon.sh

#每5秒采集一次,采集120次,共10分钟的数据

nohup nmon -f -T -s 5 -c 120 -m /绝对路径文件夹 & echo $! > nmonpid

3.编写定时脚本

0 15 * * * sh /绝对路径/StartNmon.sh

0 15 * * * sh /绝对路径/StartJmx.sh

四.综述

>以上除开jmeter脚本编写,其他编写时间不超过1小时

当任务来临的时候,不要慌张不要拒绝,先和对接人沟通相应的事宜,明确需求

需求明确之后,请思考实现方式,方式总是多种多样的,或请教前辈或上网求解

临时任务的重点均在于效率,这个前置条件给出的宽裕就是:你不需要把方案做的很完美,能得出结论即可

方案可后续再改良~

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

资料获取方式 :

相关推荐
xuyuan199822 分钟前
修复1个Bug,引爆3个新Bug?回归测试的智慧
功能测试·测试用例·bug
普通网友4 小时前
Java在云计算环境下的微服务架构设计与实践探析
测试工具
桃子不淘气5 小时前
step1:创建项目
测试工具
歪歪1009 小时前
ts-jest与其他TypeScript测试工具的对比
前端·javascript·测试工具·typescript·前端框架
Run Freely93711 小时前
postman-Newman插件
测试工具·postman
Run Freely93719 小时前
接口测试-postman-全局变量与环境变量
测试工具·postman
我的xiaodoujiao1 天前
从 0 到 1 搭建 Python 语言 Web UI自动化测试学习系列 8--基础知识 4--常用函数 2
前端·python·测试工具·ui
程序员小远1 天前
常用的测试用例
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
zhuyasen2 天前
让压测回归简单:体验 PerfTest 分布式模式的“开箱即用”
分布式·压力测试
zizisuo2 天前
使用jmeter做压力测试
jmeter·压力测试