我喜欢测试计划,它能让团队清楚测试进度,还能妥善分配测试人员,更重要的是它能保证测试质量和效率。Azure DevOps 里提供了 Test Plans 这个模块用于管理测试计划。

1. Azure Test Plans 中的测试计划、测试套件和测试用例

这篇文章主要讲解 Azure Test Plans 中怎么管理测试计划、测试套件和测试用例。在 官方文档 中这三者的定义如下:

测试计划(Test Plan): 用于对测试套件和单个测试用例进行分组。

测试套件(Test Suite): 在单个测试计划中将测试用例分组为单独的测试方案。 对测试用例进行分组可以更轻松地查看已完成的方案。

测试用例(Test Case): 定义用于测试代码或应用以用于部署的步骤。 定义测试用例以确保代码正常运行、没有错误,并满足业务和客户要求。

这三者之间,以及它们与 Azure DevOps 中其它对象之间的关系如下图:

2. 创建测试计划

为了演示如何使用测试计划,我先创建了一些迭代,并添加了一些 PBI。

在 “Test Plans” 页中,选择 “New Test Plan”创建新的测试计划。

在 “New Test Plan”页面中,输入测试计划的名称。通常 “Iteration”会默认选中当前迭代,如果没有的话请手动选中,然后点击 “Create”完成测试计划的创建:

3. 创建静态测试套件

现在,用户可以直接向测试计划添加测试用例,也可以先创建测试套件再向套件中添加测试用例。静态套件(Static suite)是最基本的测试套件。若要将套件添加到测试计划,请选择 "More options" 、“New Suite”,然后选择 "Static suite"。

静态测试套件就只是个目录,用于分组测试用例。点击 “New Test Case”创建测试用例,可以输入标题及测试步骤。最后记得选择对应的 PBI 作为 Tests,表明这个测试用例用于测试这个 PBI:

4. 创建基于需求的套件

如果测试用例比较多,需要按 PBI 分组,可以使用 “基于需求的测试套件”。选择 "More options" 、“New Suite”,然后选择 "Requirement based suite" 打开创建基于需求的测试套件的页面,在这个页面输入查询条件,点击 “Run query”,然后在查询结果中选中需要创建测试套件的项目,点击 “Create suites”:

这样每一个选中的项目都会创建一个独立的测试套件:

5. 创建基于查询的套件

基于查询的套件(Query based suite)是按给定的条件将已存在的测试用例查询出来并作为一个测试套件。这种套件很有用,例如在一个软件版本发布前要对这个 Release 的所有功能做一次测试,这时候可以创建一个测试计划,并用基于查询的套件将这个 Release 所有的测试用例整理出来,而无需重新创建这些测试用例。

要创建基于查询的套件,请选择 "More options" 、“New Suite”,然后选择 "Query based suite" 打开创建基于需求的测试套件的页面,在 “CERATEA QUERY-BASED SUITE” 页面输入查询条件(注意,Work Item Type 必须是 Microsoft.TestCaseCategory),点击 “Run query”,确认查询出来的测试用例符合自己要求,然后点击 “Create suite”。

生成的测试套件如下:

6. 执行测试计划

有了完整的测试计划,剩下的就是执行了。

切换到 “Execute” 选项卡,可以看到测试用例的执行结果。如果要将一个测试用例标记为通过,可以在这个测试用例的 “More options”中选择 “Mark Outcome”,然后选中 “Pass Test”。

7. 跟踪测试计划

除了直接查看测试用例列表,Azure Test Plans 还提供了测试计划的图表用于跟踪测试计划。切换到 “Chart” 选项卡,选择“New”,然后选中“New test result chart”。

在 Configure Chart 页面中输入图标名称,选择 Chart Type 为 Pie,Group by 为 Outcome,点击“OK”创建图表:

Azure Test Plan 允许创建多个图表,并通过 “Add to dashboard”添加到仪表板。

8. 最后

Azure Test Plan 还有几种方式管理测试用例和测试套件,例如导入导出到别的测试计划,或通过 Excel 导入和导出,还可以使用 Grid 的方式管理测试用例,具体可以参考 Azure Test Plans 的 官方文档。

[Azure DevOps] 管理测试计划、测试套件和测试用例的更多相关文章

  1. [SoapUI] 从测试套件,测试用例,测试步骤,测试数据各个级别控制是否执行

    自动保存 # -*- coding: utf-8 -*- import java.awt.Color import org.apache.poi.ss.usermodel.Cell import or ...

  2. RIDE-工程、测试套件、测试用例三者关系

    理论 type的选择: 一般来说:测试项目(directory)-测试套件(file)-测试用例 本质上,“测试项目”和“测试套件”并没有什么区别,但是testcase只能放在file类型的test ...

  3. 从一个小Bug,到Azure DevOps

    1. 一个小Bug 最近和同事提起一个几年前的 Bug,那是一个很小很小的 Bug,没什么技术含量.那时候我刚入职,正好公司卖了一款仪器到某个国家,但是那边说配套的软件运行不起来,一打开就报错.经过排 ...

  4. Robot Framework(四)创建测试套件

    2.3.1测试用例文件 Robot Framework测试用例是使用测试用例文件中的测试用例表创建的.这样的文件会自动从它包含的所有测试用例中创建一个测试套件.可以有多少测试用例没有上限,但建议少于1 ...

  5. Unittest框架之测试套件:TestSuite

    前言 使用了unittest.main()方法执行当前模块里的测试用例. 除此之外,Unittest还可以通过测试套件构造测试用例集,再执行测试用例 将测试用例添加至TestSuite(测试套件) 方 ...

  6. Azure Devops测试管理(上)

    因为最近测试人员合并到我这边开发组,对于如何能更好管理测试流程和测试与开发能更高效的完成任务,通俗的说如何能更敏捷,深入思考,然后就开始琢磨起TFS(也称之为VSTS/Azure Devops,因为我 ...

  7. Azure Devops/TFS测试管理(下)

    紧接着 上篇 经过上篇折腾,我们已经有了: ①手工测试的流程规范 ②测试用例的管理 对于开发出身的我,我觉得一个项目上线流程应该主要瓶颈只能是开发本身,因为我认为最复杂过程应该就是开发,而肯定不能是测 ...

  8. 如何利用Azure DevOps快速实现自动化构建、测试、打包及部署

    前两天有朋友问我,微软的Azure好用吗,适不适合国人的使用习惯,我就跟他讲了下,Azue很好用,这也是为什么微软云营收一直涨涨涨的原因,基本可以再1个小时内实现自动化构建.打包以及部署到Azure服 ...

  9. 在Azure DevOps Server (TFS)的流水线中编译和测试Xcode移动应用(iPhone)

    概述 Xcode是开发基于苹果macOS系统的桌面应用和移动应用的主要IDE工具.使用Azure DevOps Server (原名TFS)系统中的pipelines流水线功能,可以方便的集成Xcod ...

随机推荐

  1. SQL错误总结

    ORA-00918: column ambiguously defined 异常原因: select 查询的字段在from的两张表中都存在,导致数据库无法区别需要查询的字段来自于哪张表 以下是例子 s ...

  2. java 对 final 关键字 深度理解

    基础理解 : 1.修饰类 当用final去修饰一个类的时候,表示这个类不能被继承.处于安全,在JDK中,被设计为final类的有String.System等,这些类不能被继承 .注意:被修饰的类的成员 ...

  3. numpy基础教程--clip函数的使用

    在numpy中,clip函数的原型为clip(self, min=None, max=None, out=None),意思是把小于min的数全部置换为min,大于max的数全部置换为max,在[min ...

  4. Python模块和函数

    目录 一.基础 二.特殊函数 一.基础 #导入模块 import xxx #调用 xxx.dd() from xxx import xx  as dd #导入某个函数,as给函数加别名,调用xx() ...

  5. Python用xlrd读取Excel数据到list中再用xlwt把数据写入到新的Excel中

    一.先用xlrd读取Excel数据到list列表中(存入列表中的数据如下图所示) import xlrd as xd #导入需要的包 import xlwt data =xd.open_workboo ...

  6. C# ASP.NET MVC/WebApi 或者 ASP.NET CORE 最简单高效的跨域设置

    概述 前面写了一篇:<C# ASP.NET WebApi 跨域设置>的文章,主要针对 ASP.NET WebApi 项目. 今天遇到 ASP.NET MVC 项目也需要设置跨域,否则浏览器 ...

  7. LET函数(Excel函数集团)

    LET函数,是个Office365新增函数,所以,还在用上古版本的童鞋请无视此篇哈~ 话说Excel中,有个自定义名称的功能,如下图,左右两个表分别自定义了"data1"和&quo ...

  8. UVA11951 Area 题解

    Content 小 S 想买下一块地.他所在的城市可以看成一个 \(n\times m\) 的网格,要购买所处在 \((i,j)\) 的网格需要缴税 \(c_{i,j}\) 元,如果一块地里面有多个网 ...

  9. AT2686 [ARC080A] 4-adjacent 题解

    Content 给定一个长度为 \(n\) 的数列 \(a\),请将其重新排列,使得 \(\forall i\in[1,n-1]\),都有 \(4\mid (a_i\cdot a_{i+1})\),或 ...

  10. Raft成员变化(Membership Change)

    我司高产作家唐刘老师的小猪佩奇版"深入浅出 Raft"第四弹来啦~~前几篇内容戳这里 ↓ 在猪爸爸的努力下,泥坑银行终于能高效正常的运作了,但猪爸爸一直比较担心海盗岛那边的网点,因 ...