整体分为**测试准备→用例设计→测试执行→缺陷管理→收尾验收**五大阶段,分单元、集成、系统、UAT 四层测试。
一、测试前期准备(需求 & 计划阶段)
1. 需求评审
- 研读需求文档、产品 PRD、原型图、接口文档,梳理业务逻辑、功能点、边界场景;
- 参与产品、开发、测试三方需求评审,提出需求模糊、逻辑矛盾点,提前规避后期返工。
2. 编写测试计划
明确:测试范围、测试类型(功能 / 性能 / 兼容性 / 安全)、环境、人力、工期、准入 / 退出标准、风险预案。 准入标准举例:开发代码提测、需求定稿、测试环境部署完成。
二、测试设计阶段(编写用例)
- 拆解模块:按功能模块、页面、接口拆分测试点;
- 设计测试用例 常用方法:等价类划分、边界值、场景法、错误推测法; 用例要素:用例 ID、模块、前置条件、操作步骤、预期结果、优先级;
- 用例评审:开发、产品审核用例,补充遗漏场景,定稿归档。
分层测试规划:
- 单元测试:开发自测,针对单个函数 / 方法;
- 集成测试:模块间接口、模块联动;
- 系统测试:全产品整体功能 + 非功能;
- UAT 验收测试:产品 / 客户业务验收。
三、搭建测试环境
- 部署测试服务器、数据库,配置测试账号、测试数据;
- 区分三套环境:开发环境(DEV)、测试环境(TEST)、预生产(UAT)、生产(PROD),严禁测试直连生产。
四、多轮测试执行(核心环节)
1. 单元测试(开发主导)
开发完成单块代码后,编写单元测试代码(JUnit/Pytest 等),验证最小代码单元逻辑正确性,自测通过后提交提测。
2. 集成测试(接口 + 模块联调)
- 接口测试:Postman/JMeter 测试入参、出参、异常参数、数据库落库;
- 模块联动:A 模块提交数据→B 模块查询数据,校验跨模块数据流转。
3. 系统测试(测试工程师主力)
- 功能测试:按测试用例逐条执行,正向流程、异常输入、按钮、弹窗、权限校验;
- 兼容性测试:多浏览器、多系统、多终端(APP 多机型);
- 性能测试(大项目):并发、响应耗时、压测、数据库负载;
- 安全测试:SQL 注入、XSS、越权访问、密码加密校验。
4. UAT 用户验收测试
交付产品 / 业务方在预发环境试用,按真实业务场景验证,确认符合业务需求。
五、缺陷生命周期管理
- 提 Bug:发现问题在缺陷管理工具(禅道 / Jira)提交:标题、复现步骤、预期 / 实际结果、附件截图日志、严重等级;
- 致命:系统崩溃、主流程不可用;严重:核心功能异常;一般:次要 bug;优化:体验建议;
- 开发修复:开发认领 bug,改完代码提交新版本;
- 回归测试:测试新版本,复测已修复 bug;
- 修复通过→关闭缺陷;
- 未修复→退回重改;
- 无法复现 / 需求变更→挂起 / 关闭;
- 迭代复测:新版本全量回归核心用例,防止改 bug 引入新问题(回归测试)。
六、测试收尾 & 上线阶段
- 版本准入评估:统计 bug 遗留率,致命 / 严重 bug 清零、遗留一般 bug 在可接受范围,出具测试报告; 报告内容:测试范围、用例执行率、bug 统计、遗留问题、上线风险、上线结论(通过 / 暂缓上线);
- 生产上线:运维发布到生产环境;
- 线上冒烟测试:上线后快速跑核心主流程,确认生产环境可用;
- 复盘归档:整理测试用例、缺陷数据、问题复盘,优化后续测试方案。
七、敏捷项目精简流程(迭代版本)
需求拆解→开发编码 + 单元自测→提测→一轮系统测试→bug 修复回归→UAT→上线→线上巡检。
文章末尾固定信息


