压测服务器的搭建及测试执行

一个项目可能存在多个环境:开发的调试环境,测试人员的测试环境,专门压测的压测环境

一般测试环境和压测环境由测试人员维护,因为考虑压力测试设计到高并发,高性能,在不知代码质量的情况下,在测试环境执行压测是存在风险的,因为测试环境可能涉及到多个模块,设计到众多版本的优化或需求上线,不适宜在测试环境执行大量的并发测试,所以有必要搭建压测环境,因为压测环境使用频繁度小,可以和其他项目公用一套,为了测试结果的准确度,但在执行过程中,可将其他功能的进程kill 掉。只保留被压进行的启动。

备注:压测过程中如果涉及到短信,和资费的接口,一定注意真实消费,现在很多用户的注册涉及到短信网关会消费公司的资金,所以用户信息可以通过数据库直接模拟插入,如果涉及到其他业务的信息,可以通过接口执行操作

步骤1:首先如果没有服务器,需要向相关部门或者相关人员申请测试服务器的资源(需要根据中间件和业务的多少决定申请多少服务器)

步骤2:了解被压项目的架构,用到哪些中间件(nginx,redis-缓存,mysq,mycat-数据库,elasticsearch-搜索服务器集群等),涉及到哪些业务模块。其中中间件有些需要部署集群模式,具体的作用需要了解中间件是干嘛用的,集群的优势有哪些(具体的中间件具体学习了解)

步骤3:让开发辅助搭建压测环境,不需要的模块可以不搭建,需要时再搭建。

服务器搭建好,将测试环境的jar包,和启动.sh文件copy到压测环境,将各个业务模块的jar启动,然后通过jmeter进行接口调试,

尝试压测环境是否行通。

步骤4:选择另外一台单独的压测服务器,用例执行jmeter脚本,在执行脚本过程中可能会产生cpu的消耗,所以建议使用另外的服务器,不在在被压业务服务器上执行

在本地的jmeter上调试好被压的接口或者sql,设置好并发量,上传到压测服务器上,将常用的jmeter安装包上传到同一目录下,执行语句:/home/jmeter/apache-jmeter-4.0/bin/jmeter.sh  -n -t   /root/snn/xxx.jmx -l  001.jtl

其中jtl是执行jmeter后产生的日志,出错是可查看

步骤5:如果多接口串联执行涉及到调其他项目的接口部分 ,需要mock其相关接口(mock工程见下一博客描述)

备注:linux服务器上的打印日志

压测服务器的搭建及测试执行_第1张图片

 

 

你可能感兴趣的:(测试之路)