目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
购物网站购物流程性能测试,首先确定测试场景–>选择性能测试工具–>模拟用户访问–>监控性能数据–>分析性能数据–>进行优化–>再次测试,进行优化后,再次进行性能测试,以确认性能是否得到改善。
测试需求
对某购物网站进行压测,看是否能并发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自己的插件
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
每个人都有着自己的梦想和目标,但只有那些敢于追逐并坚持不懈地努力的人才能真正实现它们。在人生的旅途中,我们可能会遇到挫折和困境,但只要保持信心和勇气,不断前行,最终成功的道路就在前方等待着我们。
在追求梦想的路上,没有捷径可走,只有不断前行才能到达终点。不论遇到多少困难和挫折,都要坚定信念,勇往直前,因为成功属于那些不轻言放弃的人。
每个人都有自己的光芒,只要不停地前行,就能找到属于自己的路。无论遇到什么困难,都要坚持下去,因为成功就在不远处等待着你。相信自己,努力奋斗,未来一定会更加美好!