学习性能第四天,fecmall开源项目,脚本编写订单下单(附脚本)

100 阅读2分钟

项目:百度搜索fecmall

  1. 根据开源项目自己编写脚本

Fecmall性能测试实战

        开发语言: php mysql

        性能测试流程:

                首先了解项目架构(开发架构),网络拓扑图(部署架构)

                自有项目(自主研发的项目,沟通相对简单) + 第三方项目(需求调研)

                需求调研报告(业务范围,技术架构,第三方接口等) 参与者:开发,运维,测试,产品经理

                

        性能测试计划:

        性能测试方案:

                单元性能测试:采用切面编程,通过时间戳计算每个函数(方法)的时间

                架构性能

                接口级别的实施层面

性能目标:

        第一手目标(原始目标): 1000000人访问?--》 落实到压测上

                                                    一天完成100万的订单量? --》具体的吞吐量(tps)

        第二手目标(具体性能技术目标):TPS.响应时间

基于appfront压测: 关注的是用户体验(关注页面渲染相关性能)

基于appserver压测: 关注的是服务器端接口性能 (重心)

在压测过程中,我们可以使用jmeter分布式压测,采用主从的方式,也可以使用镜像制作Jmeter,docker拉去,开启进行压测

使用Jmeter完成上述接口: 单接口和混合接口分开,先单接口,后混合场景

HTTP Cookie管理器: 开启cookie功能,可以接受并保存服务器端返回的cookie信息

事务控制器: 管理,多个接口

吞吐量控制器: 控制比例,控制压力大小

Jmeter可以监控:响应时间和吞吐量(tps)

权限认证: session : 存在cookie

                    token : 头信息

设置:

SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

单场景脚本开发: 先讲登录作为仅一次控制器,获取token ,进行下个接口的操作

脚本开发: 这边无法上传,只能截图了。 fecmall商城的开发接口文档有点小问题,但不影响脚本的编写和学习

根据接口文档编写对应的脚本 至于csv文件,接口关联,这些不在这上面赘述啦

Image.png

image.png