PAYATHON 2026

Azure DevOps 如何按 User Story 组织、执行测试并统计结果?

数据小许

可以按 User Story 执行测试,并汇总通过和失败的结果。如果已有测试用例,需要统一报表,建议按迭代或测试阶段建立 Test Plan,再为各个 User Story 创建 Requirement-based test suite(需求型测试套件)。不必为每个需求单独创建 Test Plan。

如果只想从 User Story 快速添加和运行少量测试,也可以使用 Azure Boards 的 inline tests。通过这个入口添加测试时,系统会自动创建所需的默认测试计划和套件。官方说明:看板内联测试

为什么关联了 Test Case,还不能直接执行?

Test Case 保存测试步骤和预期结果,执行测试还需要具体的执行上下文。在 Test Plans 中,将用例加入测试套件后,系统会生成 Test Point,关联用例、套件、配置和测试人员。执行 Test Point 才会产生测试结果。

仅在工作项之间建立关联,还无法完成测试执行的组织,也不能靠 User Story 中的评论或关联列表统计执行结果。官方说明:测试执行与 Test Point

已有用例应该怎样组织?

可以采用下面的结构,名称仅作示例:

Test Plan:本次迭代或测试阶段
└── Static suite:需求验收
    ├── Requirement-based suite:User Story 1
    │   └── 对应的 Test Case
    └── Requirement-based suite:User Story 2
        └── 对应的 Test Case

操作步骤如下:

  1. 打开目标 Test Plan,选择 New Suite > Requirement based suite。
  2. 查询本次需要测试的 User Story,可以按 Iteration Path 等条件筛选。
  3. 一次选中多个 User Story,使用 Create suites 分别创建需求型套件。
  4. 在各套件的 Define 页面,通过 Add existing test cases 加入已有用例,无需重新录入测试步骤。
  5. 切换到 Execute,选择测试点并运行,在 Test Runner 中记录结果。

需求型套件与需求有实际的关联,仅创建同名的 Static suite 不能替代这种关联。官方的手工测试需求追踪依赖 Requirement-based test suite,加入需求型套件的用例会自动关联到对应需求。官方说明:创建需求型测试套件

如何从某个 User Story 快速启动测试?

日常操作可以从 Boards > Boards 进入:

  1. 找到 User Story 卡片,展开测试列表。
  2. 新增测试时,使用卡片菜单中的 Add test,补充测试步骤和预期结果。
  3. 执行时,在测试条目的菜单中选择 Run test,启动 Test Runner。
  4. 需要集中操作时,使用 Open test suite 进入该需求的测试套件。

如果已有用例只是通过工作项表单关联,建议先按上一节的方法加入需求型套件,再检查看板上的显示。官方建议通过 Add test 或需求型套件建立测试关系。看板入口适合少量测试;大量用例、多配置执行和集中管理更适合在 Test Plans 中完成。官方说明:添加和运行内联测试

能否按 User Story 显示通过和失败数量?

可以。如果每个 User Story 对应一个需求型套件,就可以按 Suite 汇总执行结果,查看对应需求的测试状态。

在包含这些需求型套件的父级 Static suite 中,打开 Charts,选择 New > New test result chart。官方给出的配置是:

  • 图表类型:堆积条形图。
  • Y 轴:Suite。
  • 分组:Outcome。

图表可以比较每个需求对应的 Passed、Failed 等结果。应选择 test result chart;test case chart 主要用于用例编写状态统计,不支持按测试套件分组。

如果需要表格,可在当前版本的图表配置支持相应字段时使用 Pivot table,将 Suite 设为行、Outcome 设为列。目标展示形式如下,数字沿用问题中的示例,不代表实际执行结果:

User StoryPassedFailed
User Story 1105
User Story 213

已保存的图表还可以固定到团队 Dashboard。官方说明:测试状态图表

统计时需要注意什么?

统计前要明确,统计的是测试点当前结果、去重后的 Test Case 数量,还是历史执行次数。一个用例配置了两个测试环境,可能生成两个测试点;Execute 页面显示的是各测试点的最新结果。因此,看到 10 个通过结果时,不能直接认定为 10 个不同用例,也不能认定为历史累计通过 10 次。官方说明:测试点及执行历史

创建计划和套件需要相应的访问级别及权限。如果菜单不可用,应检查 Basic + Test Plans 或符合条件的 Visual Studio 订阅,以及测试计划和套件的管理权限。原问题没有说明使用的是 Azure DevOps Services 还是 Server,具体菜单和报表能力应以部署版本为准。官方说明:测试套件的访问和权限要求

备注:内容仅供参考。