代码改变世界

性能测试案例全过程方案一---------购物流程(重要!!!)

2017-04-18 15:01  清风软件测试开发  阅读(735)  评论(0编辑  收藏  举报

性能测试案例全过程---------购物流程

压测需求:

对某购物网站进行压测,看是否能并发200个用户,主要是模拟用户登录购物下单。

 

分析:

被测的主要流程是:进入首页,登录,浏览商品,下单

可以先分为4组,每组50个用户,分别模拟 “进入首页,登录,浏览商品,下单”,后期在根据实际情况调整用户数量

对 “进入首页,登录,浏览商品,下单” 等4个业务进行总共200人并发

 

测试环境搭建:

搭建和生产环境一样的测试环境作为性能测试环境

准备4台台式电脑作为客户端安装jmeter进行模拟并发

采用分布式对4台电脑的4个jmeter进行分布式并发,如下: 

  1台jmeter模拟50个用户并发进入首页

  1台jmeter模拟50个用户并发进行登陆

  1台jmeter模拟50个用户并发浏览商品

  1台jmeter模拟50个用户并发进行下单

重点:要保证4个并发的接口在同一时间进行并发请求

 

详细测试步骤如下:

为了观看方便jmeter里面只模拟了5个用户,实际上应该模拟50个

 

 

 

 1,先对进入首页进行并发

 

2,对登录进行并发

 

3,对浏览商品进行并发

 

4,对下单进行并发

 

 

以上就模拟了200个用户对登录下单的流程进行压测,具体各个业务的用户量分配多少,还需要和运营人员进行沟通。

例如可以设置:100用户浏览首页,40用户浏览商品,30用户登录,30用户下单

注意事项:

1,无法在jmeter的一个线程组里面将多个接口/每个接口进行集合点设置:

由于在实际的情况中,存在网络差,和用户操作时间差,不可能所有用户在个节点/接口都准时进行并发

一般都是将并发压测的接口放在最后!

 因为:一,上面的方式没有考虑到用户在操作的时候需要思考时间。

二,每个接口不肯同时进行并发,因为有的请求先到(已经调接口了),有的请求还在排队,有的请求还在网络传输中。

 2,分布式的时候,一定要保证所有被并发压测的接口(一般是最后一个接口)都在同一时间进行集合,使其最后在同一时间进行并发

 

 

 

 这是一种混合场景不同比例情况下,对每个接口做真正集合点并发!!!

也可以像下面这种方式:在一个jmeter的一个测试计划里面创建多个线程组进行并发!

 

 

 

 

 

性能测试案例全过程方案五---------购物流程(重要!!!)

 

 

3,性能监控用Grafana或者jmeter自己的插件

jmeter自己的插件添加步骤:https://jmeter-plugins.org/downloads/old