软件测试知识整理

软件测试流程

需求分析阶段

目的:确保测试工作全面覆盖软件需求
主要活动

  • 阅读需求文档(需求规格说明书、API文档等)
  • 分析需求点,明确测试范围与重点
  • 参与需求评审会议,确认需求准确性与完整性

测试计划阶段

目的:制定测试计划指导后续工作
主要活动

  • 编写测试计划文档(目标/范围/策略/资源/环境)
  • 与项目团队沟通确认计划
  • 制定风险评估与规避措施

测试设计阶段

目的:设计有效测试用例
主要活动

  • 编写功能/性能/安全测试用例
  • 确保用例覆盖所有功能点
  • 组织测试用例评审

测试环境搭建阶段

目的:创建真实/模拟测试环境
主要活动

  • 配置硬件/软件/网络环境
  • 部署测试环境(安装软件/配置数据库)
  • 准备真实有效的测试数据

测试执行阶段

目的:执行测试并记录缺陷
主要活动

  • 执行冒烟测试验证核心功能
  • 按优先级执行测试用例并记录结果
  • 初步分析缺陷并与开发沟通

缺陷管理阶段

目的:跟踪管理缺陷修复
主要活动

  • 提交详细缺陷报告(现象/影响/复现步骤)
  • 跟踪修复进度
  • 验证修复结果并关闭缺陷

测试报告和总结阶段

目的:输出测试结果与改进建议
主要活动

  • 编写测试报告(结果/缺陷统计/结论)
  • 总结测试过程并提出改进点
  • 提交报告给相关团队审阅

注意事项

  • 流程可根据项目实际情况调整
  • 测试计划需由经验人员编写
  • 需严格遵守测试规范
  • 建立完善的缺陷管理机制

测试用例八大要素

  1. 测试用例编号

    • 唯一标识符(如:CRM-ST-客户管理-001)
    • 便于追踪与管理
  2. 测试项目

    • 被测模块/需求(如:支付模块)
    • 明确上下文环境
  3. 测试用例标题

    • 简洁描述测试重点(如:支付宝扫码支付成功验证)
    • 标题需唯一
  4. 重要级别

    • 高/中/低三级划分
    • 优先执行核心功能用例
  5. 前置条件

    • 执行前提(如:用户已登录)
    • 确保测试环境正确性
  6. 测试输入

    • 输入数据(如:测试账号/文件)
    • 触发被测对象行为
  7. 操作步骤

    • 详细执行步骤(1.打开APP 2.点击…)
    • 提供明确操作指引
  8. 预期结果

    • 可量化的期望结果(如:返回”支付成功”提示)
    • 判断测试通过的标准

测试用例优先级设定原因

  1. 资源有限性
    优先测试高价值功能,提升ROI

  2. 风险管理
    降低核心功能缺陷带来的业务风险

  3. 用户需求导向
    优先保障用户高频使用场景

  4. 支持迭代开发
    适配敏捷开发快速交付需求

  5. 提高测试覆盖率
    在有限时间内覆盖更多关键路径

  6. 便于跟踪管理
    实现测试过程的可视化管控


Bug单构成要素

  1. 所属系统
    定位问题产品(如:电商平台APP)

  2. 发现版本
    具体版本号(Build 2.3.1)

  3. 问题模块
    功能模块(如:订单中心)

  4. 提交人
    测试工程师姓名+联系方式

  5. 错误类型
    分类:代码/界面/安全/性能等

  6. 重现概率
    必现/大概率/小概率

  7. 严重级别
    致命/严重/一般/提示

  8. 优先级
    紧急/高/中/低

  9. 标题
    简明描述(如:支付成功后订单状态未更新)

  10. 单号
    系统自动生成(BUG-20231105-001)

  11. 详细内容

    • 测试环境(iOS 15/Chrome 116)
    • 复现步骤(1.登录 2.支付…)
    • 预期/实际结果对比
    • 错误日志/截图证据
  12. 附件
    测试数据/日志文件/屏幕录像

完整示例

BUG-20231105-001 | [高优先级] 支付成功后订单状态未更新

系统 模块 提交人 类型 严重度 重现率 复现步骤 预期结果 实际结果 附件
电商平台APP V2.3.1 订单中心 测试组-张三(zhangsan@xxx.com 代码错误 严重 100% 1. 使用测试账号13800138000登录
2. 选择商品提交订单
3. 使用支付宝完成支付
订单状态变更为“已支付” 保持“待支付”状态 支付成功截图
支付日志