Skip to content

缺陷示例

缺陷示例

当测试人员发现一个 Bug 时,需要填写一份缺陷报告来记录这个 Bug,并通过缺陷报告告知开发人员和项目组其他成员所发生的问题。所以缺陷报告是测试人员和项目组其他成员交流沟通的重要工具。

好的缺陷报告可以提高开发修改 Bug 的速度、提高测试部门的信用度、增强测试和研发部门的协作。

缺陷报告中需要包含以下信息:

  • ID:API_001
  • 所属产品:PetClinic
  • 发现的版本:v1.0
  • 所属的模块:宠物主人搜索接口
  • 提交人:xx
  • 复现概率:100%
  • 严重级别:严重
  • 优先级:高
  • 标题:GET /owners接口返回数据格式错误
  • 描述
  • 测试环境:Windows 11,Python 3.9.0,requests 2.28.0
  • 前提条件:系统中存在Last Name为"Davis"的宠物主人
  • 复现步骤:
    1. 发送GET请求到/owners?lastName=Davis
    2. 检查响应状态码
    3. 检查响应数据格式
  • 预期结果:响应状态码为200,返回JSON格式的宠物主人信息数组
  • 实际结果:响应状态码为200,但返回的是XML格式数据
  • 附件:
// 预期响应格式
[
  {
    "id": 1,
    "firstName": "George",
    "lastName": "Davis",
    "address": "110 W. Liberty St.",
    "city": "Madison",
    "telephone": "6085551023",
    "pets": []
  }
]

// 实际响应格式
<?xml version="1.0" encoding="UTF-8"?>
<owners>
  <owner>
    <id>1</id>
    <firstName>George</firstName>
    <lastName>Davis</lastName>
    <address>110 W. Liberty St.</address>
    <city>Madison</city>
    <telephone>6085551023</telephone>
    <pets></pets>
  </owner>
</owners>

缺陷报告模板

字段 内容 说明
缺陷ID API_XXX 唯一标识缺陷的编号
产品名称 PetClinic 被测试的产品名称
版本号 v1.0 发现缺陷的版本号
模块名称 接口模块 缺陷所属的功能模块
缺陷标题 简洁描述缺陷 一句话概括缺陷内容
严重级别 严重/一般/轻微 缺陷对系统的影响程度
优先级 高/中/低 缺陷修复的紧急程度
缺陷类型 功能/性能/安全/兼容性 缺陷的分类
测试环境 详细环境信息 测试时的环境配置
前提条件 执行测试前的准备 测试执行前的必要条件
复现步骤 详细操作步骤 重现缺陷的具体步骤
预期结果 期望的正确结果 按照需求应该得到的结果
实际结果 实际得到的结果 测试时实际观察到的结果
附件 截图/日志/数据 支持缺陷说明的相关材料
提交人 测试人员姓名 发现并提交缺陷的人员
提交时间 YYYY-MM-DD HH:mm:ss 缺陷提交的时间
分配给 开发人员姓名 负责修复缺陷的开发人员
状态 新建/已分配/已修复/已关闭 缺陷的当前状态
修复版本 v1.1 缺陷被修复的版本号
关闭时间 YYYY-MM-DD HH:mm:ss 缺陷关闭的时间

缺陷严重级别定义

严重级别 描述 示例
严重 导致系统崩溃、数据丢失或主要功能无法使用 接口返回500错误、数据被误删
一般 影响部分功能使用,但不影响主要业务流程 接口返回格式错误、字段缺失
轻微 不影响功能使用,但影响用户体验 响应时间稍慢、提示信息不准确

缺陷优先级定义

优先级 描述 修复时间要求
严重影响系统使用,需要立即修复 24小时内
影响部分功能,需要尽快修复 3个工作日内
不影响主要功能,可以延后修复 下个版本修复

缺陷状态流转

新建 → 已分配 → 已修复 → 已关闭
  ↓       ↓       ↓
 已拒绝  已重新打开  已重新打开

缺陷跟踪工具

推荐使用以下工具进行缺陷跟踪:

  1. JIRA - 企业级缺陷管理工具
  2. Bugzilla - 开源缺陷跟踪系统
  3. Mantis - 轻量级缺陷跟踪系统
  4. GitHub Issues - 基于Git的缺陷跟踪
  5. 禅道 - 国产项目管理工具