57期性能测试项目阶段

性能测试流程

怎么做负载测试?

怎么做性能测试?

step 1 :需求分析

分析本次测试哪个项目,哪些模块,接口还是页面,项目人手安排,项目大致时间安排,采用什么工具,通过标准等

step 2:测试计划和方案

计划:在什么节点完成什么事

方案:谁在 什么时间 什么地点 做什么事情

step 3: 环境搭建

搭建性能测试,部署项目

性能测试环境:

本地环境----》dev环境—》test 环境—》性能测试环境—》预发布环境—》灰度环境(金丝雀环境)—》生产环境(现网环境)

开发:本地环境、dev环境
测试:

手工测试:test环境(测试环境),t1,t2,t3。。。,e1,e2,测试一般测2-3轮,

​ 预发布环境–发布之前的最后一轮验证

接口测试:test环境–详细,预发布-回归

GUI测试:test环境–等功能稳定以后,预发布–回归

性能测试:test环境—没有专门的性能测试环境,注意:测试环境有很多脏数据,需要剔除;注意错峰出行;不要影响人家功能测试

​ 有专门的性能测试环境,就直接在性能测试环境压

​ 性能测试环境极其配置:

​ 1)公司自己买了专门的服务器专门用来做性能测试

​ 2 )云租赁,需要用的时候就去租

​ 配置:a、要么跟现网环境一致,例子:现网环境 4台 4核4G,性能测试环境 4台 4核4G—现网1000w 流量

​ b、要么是现网环境的等比缩放,例子,现网环境 4台 4核4G,性能测试环境1台4核4G----1000w/4

​ 1台1核1G----1000w/4/4

​ 性能测试的时候需要注意流量的等比换算

用户:生产环境
运维:灰度环境(金丝雀环境)

step 4 :编写性能测试脚本–狭义(接口测试)

step 5:场景设计

真实场景–数据、逻辑、思考时间,并发场景-线程数设置

step 6:执行脚本并且记录数据

结果、数据、错误日志、日志文件

step 7:分析结果并生成报告

是否通过,为什么通过,什么原因导致的,可以采取哪些方案来解决

step 8:回归

有问题的时候,开发改了代码以后需要重新测试,验证本次修改是否有效

项目安排:

1、被测项目:蜗牛商城

2、linux 下面部署蜗牛商城

应用服务器—linux

数据库服务器—windows

3、提取需求,编写脚本–负载测试----周三周四

4、提取需求,编写脚本–压力测试–周五周六

需求分析:

项目没有上线:

核心流程:支付、搜索图书、加购、查看订单

高频使用:搜索图书、支付、加购、查看订单-----加购、查看订单

项目已经上线:

没有数据部、没有产品、没有运维

只能靠自己:logs—》access

假如得到了一天的数据:0.5h* 16 *3000

接下来的工作安排:

1.统计日志文件中访问的最频繁的3个接口,方式不限(工具、代码、手动)

对排名第一或者第二的接口进行负载测试,要求响应时间是500ms

2.对我的订单页面进行负载测试

数据量参照:已有数据* 16 *3000

压力测试:

没有数据支撑:最优最大或者实际负载附近,测试时间12*n—》3-4h

​ 注册用户*(5%-8%)

被测对象:单接口、业务、系统(找主要流程)

有数据支撑:在真实访问量附近测试(注册用户数附近)

被测对象:单接口、业务、系统

补充系统:按主要业务流程(搜索、加购、支付、订单)

​ 按接口访问量百分比

目标流量----日志文件*6

稳定性测试容易发现的问题:

1.内存泄漏(memary leak)

分配的内存因为某种原因不能回收或者回收不了,导致系统自己不能用,也不能回收给别人用

例子:超时储物柜

2.内存溢出(out of memary,OOM)

需要的内存大于系统可以分配给你的剩余内存

内存溢出更严重,但是内存泄漏导致内存溢出

什么原因会导致内存泄漏,内存溢出?

webdriver driver.close() con.close() cur.close() file

总结:

负载测试:

没有访问数据:

1.找最优最大

2.在最优附近找三组(至少三组)进行测试

3.记录测试结果并截图,有错需要附带日志报错信息和jmeter查看结果树错误信息

备注:查看服务器报错日志:tail-200f logs/catalina.out–启动报错

​ tail-200f logs/lacalhost.xxx.log----严重(fatal)、错误(error)

​ cat…

有访问数据:

1.找最优最大

2.估算实际流量—根据现网流量、注册用户数(5%-8%)、在线用户数(并发数20%)

3.在估算值附近找三组进行测试

4.记录测试结果并截图,有错需要附带日志报错信息和jmeter查看结果树错误信息

压力测试----长时间、极限情况下

没有访问数据:

1.找最优

2.在最优处进行压测,压测时间12h*n,一般是2天,

有访问数据:

1.根据实际流量来估算虚拟用户数

2.在估算值处进行压测,压测时间12h*n,一般是2天

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值