压测项目落地实施:从目标到成果,项目管理的关键步骤

2024-07-26
来源:网络整理

简单的开始

时刻提醒自己不忘初心,所以我来分享一个压力测试项目的实现。

本系统以项目管理的思维,实现了压力测试的流程,希望能够给同事们在工作中提供一些帮助和启发。

项目管理管理什么?它管理目标、计划、进度和结果。

压力测试项目的实施也围绕这些大方向逐步开展。

01. 压力测试启动阶段

好的开始是成功的一半。对于压力测试项目来说,项目启动阶段非常重要。

压力测试项目管理启动阶段需要做什么?

关键词:目标、计划、资源

1. 测试需求研究

比如,同学们经常会遇到这样的情况:

业务说:我们要办一个活动,你们来做活动压力测试,确保系统稳定,不出问题!!!

开发人员说:测试员,帮我压缩一个接口!!!

运维说:安全策略调整了,请帮我做一下压力测试!!!

测试人员问:你要对哪些接口进行压力测试?产品需求需要写吗?好多让人困惑的问题。

考生们这时候该怎么办呢?

需求从哪里来?为什么要做?压测的目的是什么?预期的业务指标是什么?

围绕业务目标进行沟通、指导和确定商定目标。实现您、团队和企业能够理解的数字。这是一个理解的过程。

2. 分析业务指标数据,将其转化为专业术语的绩效指标数据

分析业务指标数据,收集生产环境监控数据,转化为专业的性能测试数据

3. 确定明确有效的压力测试目标

目标管理,确定明确有效的项目目标

4. 组织测试资源

5. 制定并审查测试计划

我的实践经验

确定买一送一活动的业务指标

1.收集业务跟踪数据,确定每个页面的流量,最终确定订单提交的转化率。

建立相对准确的业务模型,为测试场景脚本做准备

2. 历史数据参考

我们的业务监控数据没有秒级的订单统计,所以我们从数据库查询往年、往活动的峰值订单数据,采集最高秒级的订单数据。

3. 业务增长趋势

通过与业务营销团队沟通,判断业务增长趋势,将业务增长系数乘以历史最好业务表现数据,预估预期业务表现。

4. 覆盖范围

监控数据、分钟级、秒级业务请求数据接口TPS统计、峰值监控数据接口(根据自身业务特点确定)。

5. 确定目标

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。 如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受 可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛 分享他们的经验,还会分享很多直播讲座和技术沙龙 可以免费学习!划重点!开源的!!! qq群号:110685036

02.# 压力测试准备阶段

测试计划确定后,在工作开始之前需要准备好工具、资源、脚本、数据、测试场景等,这些都必须在项目计划的范围内。

1. 测试工具

抓包工具、脚本工具、监控平台、全链路压测平台

2. 环境资源

压机、服务器、网络环境、数据库资源的配置情况,是否在监控范围内

3.测试脚本

根据业务模式梳理业务脚本

4.测试数据

5. 测试场景

容量测试、稳定性测试、异常场景

我的实践和经验

细节:压测人员与被压服务的网络关系,压测的基础数据量,压测脚本中是否有断言,压测的业务漏斗比例是否等同于业务埋点监控对应的流量模型/转化率,梳理链路覆盖到的应用、中间件、数据库资源是否都在监控范围内,这些都是需要考虑的细节。

微信开发心得_分享一个小程序开发心得_分享心得的平台

03.#压力测试执行阶段

整个项目过程中,如果启动、准备阶段做好了,执行阶段就比较简单了,只需要在某个时间点集中精力压测就可以了。当然很多公司做生产压测都是深夜,体力上比较累。当然这也是一个团队的工作,通过团队合作高效完成任务并不容易。

1.容量测试

比如进行100、200、300、400、500并发或者步进策略的压力测试场景。

2.稳定性测试

3. 异常测试

例如,压力测试时切换主备中间件

4.记录测试过程

5. 收集并记录测试结果

需要收集和记录哪些内容?接口TPS、模块事务QPS、响应时间、失败率、按资源、服务器资源、数据库资源、连接数、网络资源、中间件资源等。

04.# 压力测试、调优和分析阶段

压测的执行过程和分析过程也是一个并行的过程,压测过程中,首先通过现象去反映问题、定位问题。

1.分析测试结果和监测数据

2. 整理测试结果

3.分析定位异常问题

性能分析与调优的思路,这也是我在看书的时候看到并总结出来的,认为是非常有用的一种方法。

1. 分层分析

(1)熟悉系统模型、系统架构、调用链层次,便于监控、分析、排查

(2)方法:为每一层创建一个清单,然后逐层分析(自上而下或自下而上)

2. 科学论证

(1)问题发现-现象

(2)链接分析与问题假设预测

(3)实验演示

(4)分析

我的实践经验

性能优化也是一个持续的过程,不管是看到某个接口响应时间长,还是看到pod资源分布不均,又或者是数据库监控有慢查询等等,都要有思路去排查定位问题,一步步从下往上/从上往下。

很多时候,测试发现问题就结束了,问题就被传到开发。其实开发可能一下子也不知道问题出在哪里,也要一步步去定位、排查问题。所以我们测试同学在这方面可以培养自己的耐心和思考能力,我们才有能力一起帮忙定位问题。

当然和开发人员保持良好的工作关系也很重要,要知道团队是需要协作、共赢的,当时可能你还不太理解,但是和他合作过一次,交流过之后,你就会真正理解,慢慢的测试也培养出一种架构思维。

06.#项目报告评审阶段

1.回顾与结果对应的目标。

2.沉淀。

从性能测试的现象、原因、解决方法、思路、操作步骤、问题跟踪等,积累问题的解决方案,总结经验,要时刻学会积累,积累就是财富,即使有问题,也不需要害怕,多思考,慢慢推动改进,就这样。

认真结束

我们经常听说测试业务能力不如产品能力,技术能力不如开发能力,那我们该怎么办呢?

每个岗位都有价值,我们都是平等的,首先要尊重检测/质量管理这个职业,热爱这个职业和工作,不断前行。

测试技术是需要积累和有目的的学习,解决测试过程中遇到的问题,带着问题去解决,然后运用到项目中。

业务功能测试也很棒,我一直认为业务功能测试是最难的,需要对业务有系统全面的理解,需要有探索精神。

我们可以有一种态度,质量由我决定,我可以自信地说是的,它可能不是 100% 完美的覆盖,但凭借我们的态度,我们会尽力而为,绝对不会糟糕。

要有带动自己的能力、带动团队的能力、带动质量和文化建设的能力,要有带动干事、提高质量和效益的事,一点一点地干,不断改进,一定会越来越好。

下面是配套的学习资料,应该是做[软件测试]的朋友最全面最全的准备仓库了,这个仓库也陪我走过了最艰难的路程,希望也能帮助到你们!

软件测试面试小程序

百万人用过的软件考试题库!!!用过的人都知道!!!全网最全的考试题库APP,手机上、地铁上、公交上都可以做,快来下载吧!

涵盖以下面试问题:

1.软件测试基础理论、2.Web、app、界面功能测试、3.网络、4.数据库、5.

6.web、app、界面自动化,7.性能测试,8.编程基础,9.hr面试题,10.公开测试题,11.安全测试,12.计算机基础

如何获取信息:

分享