测试理论知识

一、为什么要测试?

  • 软件本身存在潜在问题,非正常运行易出故障
  • 代码与文档由人工编写,难免有错误/疏漏
  • 环境(硬件、系统、网络)会影响软件运行
  • 软件测试是保障产品质量、降低上线风险的关键手段

二、测试的定义

制造业定义

以检验产品是否满足需求为目标

软件定义

  • 验证软件功能的正确性
  • 发现软件中的缺陷(Bug)

三、软件的生命周期

指软件从产生到报废的完整过程(时间维度概念)

四、软件生命周期主要阶段

  • 客户问题引入或定义(如点餐系统需求提出)
  • 可行性分析(经济/商业论证、政治、法律、技术等)
  • 项目招投标
  • 项目立项
  • 需求分析
  • 开发阶段(设计、编码、测试)
  • 维护

五、软件生命周期模型

  • 瀑布模型(Waterfall):传统线性,已淘汰(如1年项目测试仅2个月)
  • V模型:重点模型(开发与测试阶段对称)
  • W模型:了解(强调测试与开发并行)
  • H模型:重点模型(测试贯穿全生命周期)
  • 敏捷开发模型
  • 迭代开发模型
  • 增量开发模型

六、V模型

(一)开发与测试阶段对应关系

开发阶段 对应测试阶段 核心说明
详细设计 单元测试 验证单元符合详细设计规格,最小测试单位;多开发自测(测试参与需懂开发语言)
类比:测试一本书的单个单元
概要设计 集成测试 验证多单元组合符合概要设计规格,重点测试模块间数据交互
类比:测试一本书的多个单元(如1-2单元/期中1-6单元)
需求文档 系统测试 对软件整体测试,验证业务流程正常运行
类比:测试一本书的全部单元(1-10单元)
用户需求 验收测试 站用户角度验证需求满足度,分内部(Alpha)、外部(Beta)验收

(二)验收测试的区别

维度 内部验收测试(Alpha) 外部验收测试(Beta)
测试地点 公司内部 客户方环境
测试人员 内部技术团队(开发/测试) 客户方员工
问题处理 集中快速解决 反馈后开发修复
测试周期 较短 较长

(三)核心文档

  • 需求文档(SRS):产品输出,描述项目设计、框架、功能、模块
  • 概要设计(HLD):开发输出,初步架构设计(含数据库类型、模块名称)
    类比:盖房子的框架
  • 详细设计:开发输出,功能/模块的具体实现方案
    类比:盖房子的装修细节

(四)测试与环境分类

  • SIT测试:系统集成测试(IT+ST合并),属技术测试
  • UAT测试:验收测试(用户视角)
  • 环境类型:开发环境测试环境(SIT1/SIT2/SIT3 + UAT环境)、线上环境

七、H模型

(一)测试核心流程

  1. 需求澄清会议:产品经理组织,输出SRS需求规格说明书
  2. 需求分析:测试团队深入理解需求文档
  3. 测试计划编写(测试经理负责)
    • 核心内容:测试目的、背景、范围、准入准出标准、环境资源、任务进度、风险及应对、交付文档
    • 准入条件(测试开始前):
      • 开发:提供需求分析报告、概要/详细设计说明书、版本说明书、开发自测报告
      • 测试:测试计划完成、用例评审通过、测试环境搭建完毕
    • 准出条件(测试结束后):
      • 用例100%执行
      • 无遗留Bug
      • 输出测试报告
  4. 用例设计与评审
    • 测试人员编写用例
    • 评审方式:组内评审(开发/测试/产品参与)、交叉评审(测试人员互审)
  5. 用例管理:评审通过后导入工具(禅道、TestLink
  6. 环境搭建:运维/测试经理/测试人员完成
  7. 开发提测:提交代码包(需满足准入条件)
  8. 版本部署:测试将代码包部署到测试环境
  9. 冒烟测试(版本验证测试)
    • 定义:验证新版本主要/基本功能是否正常
    • 结果:通过→进入SIT测试;失败→打回开发修改
  10. 多轮SIT测试
    • SIT1(全量测试):执行所有用例,Bug通过工具(禅道)指派开发
    • SIT2及后续(回归测试):开发修复后先冒烟测试,再验证相关用例
  11. 满足准出条件:用例100%执行+无Bug
  12. 输出测试报告:SIT测试完成(技术测试结束)
    • 报告内容:测试目的、范围、背景、实施日期、人员、Bug清单、用例清单、测试结果
  13. UAT验收测试:用户验收通过后封板(封装版本)
  14. 上线准备与验证
    • 准备线上数据
    • 上线后线上测试:无Bug→上线成功;有Bug→影响大则回退版本,影响小可纳入下次迭代

(二)测试用例来源

  • 冒烟测试用例
  • 验证上一版本Bug的用例
  • Bug关联模块的用例
  • 可疑测试场景与用例
  • 补充的测试场景与用例

(三)主流程总结

产品需求会议→测试/开发分析需求→测试经理编写计划+分配任务→测试设计用例→用例评审通过→导入管理工具→搭建环境→开发提测(符合准入)→部署版本→冒烟测试→多轮SIT测试(迭代修复Bug)→满足准出→输出测试报告→UAT验收通过→封板→上线准备→线上测试→上线成功

posted @ 2025-11-05 22:19  qiuqiangqiang123  阅读(9)  评论(0)    收藏  举报