一个完整的项目是怎么做性能测试?资深8年测试总结...

本文是一位资深测试工程师的经验总结,详述了一个完整的性能测试过程,从前期准备、性能需求分析到压测执行、监控分析和性能优化。重点讲解了JMeter在性能测试中的应用,并强调了性能测试在项目中的重要性和专业性。


前言

突然有一天!
领导说:“小刘,今天把996福报系统压一下,下班前把压测报告发我邮箱。”
啥?压测?今天?报告?怎么压?怎么写?
从来没做过啊,心里一万匹草泥马奔跑而过,别说996了,估计明天都下不了班了;
好歹也像功能测试,给个压测需求吧!没法,你遇到了一个不懂性能测试的领导;

一个完整的项目是怎么做性能测试的

1、前期准备

性能测试虽然是核心功能稳定后才开始压测,但是在需求阶段就应该参与,这样可以深入了解系统业务、重要功能的业务逻辑,为后续做准备。

2、性能需求分析(评审)

评审时,要明确性能测试范围、目标;
由于非专业性能测试人员不知道怎么定目标,如果你让他们定,可能定的目标会很离谱,比如,要求单机tps10万、支持1万的并发等等,显然是不合理的,你压测也达不到这个目标;

所以,这个时候,就要体现性能测试人员的专业性了,最好是引导产品、需求或者开发出压测目标(分别是单场景、混合场景、稳定性场景的),自己给建议,大家一起定一个当前合理的目标,达成一致后,让产品或者需求把最终评审的结果以邮件方式发送给领导及项目组成员;

这样,如果最后上线后出问题,还可以避免只有测试背锅,总之目标也不是你一个人定的,是大家一起定的,要背锅一起背锅;

定性能指标,又分为迭代项目和新项目,迭代项目就根据生产监控、日志分析来评估指标,这里需要做容量规划,新项目单独评估(后续详细介绍);

这里说下性能指标,一般是tps(每秒处理事务数,这里都是通过的事务)、art(平均响应时间)及并发数,加上服务器资料利用率的要求(cpu、内存、IO、网络等)、各个服务的资源情况。

3、熟悉系统架构,申请性能测试环境

做性能测试,必须要熟悉项目的架构,这样你才知道监控哪些服务器,以及准备监控方案(监控方式及监控的性能指标点);

包含具体用到的web服务

<think> 嗯,用户这次想要详细了解企业软件测试部门的整体流程和实习生需要具备的能力。从用户之前的引用来看,ta显然在准备软件测试相关的实习求职,而且引用内容涉及测试流程、实习生技能要求、面试准备等实用信息。 用户可能正处于职业起步阶段,急需了解企业真实工作场景。ta的提问很有针对性,说明已经做过基础功课,现在需要系统性的框架指导。值得赞赏的是,用户特别强调"实际企业"这个限定词,暗示ta不想要理论堆砌,而是真实的一线经验。 关于测试部门总流程,需要突出三点核心:需求阶段介入的重要性(引用2提到需求分析)、测试文档的战术意义(引用3强调测试用例文档化)、以及贯穿全程的沟通闭环(引用4提到跨部门协作)。要避免教科书式的阶段罗列,而是呈现每个环节的实用要点——比如需求评审时测试人员如何用边界值案例挑战产品逻辑。 实习生能力方面,引用1和5提供了很好的线索。除了硬技能,要特别强调实习生特有的软技能:比如"听懂任务意图"这个点(引用2提到领导指出问题后如何行动),这比掌握测试工具更重要。用户可能没意识到企业最看重的其实是学习反馈能力——实习生提交的bug报告质量往往能反映这点。 突然想到个关键点:测试实习生常犯的错误是过度关注技术工具而忽略流程本质。应该提醒用户,企业真正需要的是"能融入质量保障体系"的人,就像引用3说的测试计划与执行是战略战术的关系。可以举个接地气的例子说明:同样用Postman做接口测试,实习生和正式员工的视角差异在哪里。 最后决定用双维度框架作答:先按生命周期拆解测试流程(突出测试左移),再分类实习生能力模型(工具/流程/软技能)。结尾的拓展问题特意设计成阶梯式——从"生存"(如何上手)到"发展"(如何转正),这样能覆盖用户潜在的进阶需求。 </think> 基于企业实践和行业要求,软件测试部门的总流程及实习生核心能力要求如下: --- ### **一、企业软件测试部门标准流程** 1. **需求评审阶段** - 测试团队参与产品需求评审,识别需求模糊点及潜在风险 - 输出《需求可测试性分析报告》,标注需澄清的需求项(如边界值定义不明确等)[^3] *关键动作:用思维导图梳理业务逻辑流,标记关联功能模块* 2. **测试计划阶段** - 制定《测试计划书》:明确测试范围/资源/里程碑/风险预案 - 示例:APP迭代测试需包含兼容性矩阵(Android 8+ & iOS 13+机型覆盖)[^3] 3. **测试设计阶段** - 编写《测试用例文档》:采用“功能模块+用户场景”双维度设计 - 典型用例结构: ```markdown [登录模块] TC-LOGIN-003 前置条件:账号被冻结 操作步骤:输入正确密码点击登录 预期结果: - 弹窗提示"账号已冻结" - 界面跳转至解冻引导页 ``` - 使用XMind/Zephyr等工具进行用例管理[^4] 4. **测试执行阶段** - 执行策略: | 测试类型 | 执行阶段 | 工具示例 | |---------------|---------------|-------------------| | 冒烟测试 | 版本准入时 | Jenkins自动触发 | | 功能测试 | 用例执行期 | Jira+Xray插件 | | 回归测试 | Bug修复后 | TestLink筛选用例 | - 每日输出《缺陷跟踪表》,标注阻塞级Bug(需开发当日修复)[^3] 5. **质量报告阶段** - 版本发布前输出《测试总结报告》含: - 缺陷分布雷达图(按模块/严重等级) - 测试覆盖率统计(需求/代码) - 线上风险预判(如:支付模块需监控前72小时流水) --- ### **二、软件测试实习生必备能力** #### **硬性技能** 1. **流程认知能力** - 理解企业专属流程:如Scrum模式下测试介入节点(Sprint计划会领取测试任务) - 区分Web/App测试差异: > Web需掌握浏览器开发者工具网络分析,App需熟悉ADB抓取Android日志[^2] 2. **基础测试执行能力** - 能独立执行测试用例并提交规范缺陷报告: ```markdown [缺陷标题] 购物车-商品数量修改为0仍可结算 [重现步骤] 1. 添加商品A到购物车 2. 修改数量为0 3. 点击结算按钮 [实际结果] 进入订单确认页 [期望结果] 弹出提示"购物车为空" [附件] Android_P30_操作录屏.mp4 ``` #### **软性能力** 1. **沟通协作能力** - 精准描述Bug现象(避免说“功能坏了”,改为“在Chrome 116版本点击搜索无响应”) - 学会跨部门沟通话术: > “张工,订单详情页的金额显示异常,可否协助确认是否后端传值问题?复现路径已附在Bug单”[^5] 2. **快速学习能力** - 3天内掌握公司内部测试平台操作 - 能通过SQL简单验证数据正确性(如`SELECT status FROM orders WHERE order_id='123'`) #### **加分能力** - 接口测试入门:能使用Postman发送GET/POST请求验证状态码 - 基础自动化认知:了解Selenium定位元素原理(如XPath定位登录按钮) - 缺陷预防思维:在需求评审时提出“用户生日应限制1900后”[^4] --- ### **三、实习生快速成长建议** 1. **任务执行技巧** - 接收任务时主动确认: “这个功能需要重点验证哪些场景?是否有历史缺陷需要回归?” - 每日工作记录模板: ``` 2024-06-15 工作日志 ✅ 完成登录模块20条用例执行 ⚠️ 发现兼容性问题:iOS 15.4微信授权失败 ➡️ 明日计划:协助导师编写性能测试用例 ``` 2. **人脉积累路径** - 每周向导师申请1次结对测试(观察资深测试思维) - 参与质量分享会时提出1个思考(如:“是否可在测试环境埋点捕获用户路径?”) --- > **实习生能力成长路线**: > 第1月:掌握测试执行规范 → 第2月:独立负责模块测试 → 第3月:参与用例设计评审 > 通过实习建立完整的质量保障认知体系,为转正或校招奠定基础[^1][^5] ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值