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

本篇文章分上下

上 主要更多说在测试流程和手工测试的管理下

下 主要是更多探讨自动化的一些流程(暂时摸索结合Specflow的形式来搞,这样可以方便和测试用例映射)

现状:

先业务部门先加业务需求到Jira,然后视情况有可能要配合QA添加测试任务,由此可能会带一个主Jira任务和若干个子测试任务。

然后QA可能会根据此会有他们的测试用例,写在各自的excel里,可能会某些时候汇总下但总体依然是本地保存。

对此我的疑惑:

Jira的目的应该是任务管理,任务管理里穿插着测试任务这样真的好吗?

另外就算任务分解也应该是开发的任务分解,比如业务部门提的应该是业务目标咯,为了完成一个业务目标开发可能要完成若干个事情,那任务管理里更应该体现的是这个而不是测试。

测试任务应该是另外的地方分门别类把?(当然之后肯定要有一个汇总展示的地方将业务目标/开发任务/测试任务都显示出来的)。

然后眼光放到了TFS上面的“Test”上。

发觉一个事情,TFS四大支柱里,Code/Work/Build And Release/Test。

网上介绍的最少的就是Test,最多的是Build And Release(也就是Azure Pipeline)。

摸索TFS的Test流程

Test下分为Test Plans/Parameters/Configurations/Runs/Machine这几个子tab。

除了一个Runs显然是显示测试结果用的,其他的我之前一点都没接触郭,然后我重点去摸索了下他的Test Plan

通过它的Test Plan大概整理出按照TFS的套路,一个测试流程是由三部分构成:

Test Plan 测试计划:猜想就是对应到某个迭代周期的意思

Test Suit 测试套件:猜想是映射到某个业务目标的意思

Test Case 测试用例:具体的某一个测试场景

一个测试计划包含若干个测试套件,一个测试套件包含若干个测试用例

但是一个测试用例可以属于多个测试套件,一个测试套件也可以属于多个测试计划

而最细粒度的测试用例则是类似下面的样子录入

然后应该会是类似下面这样的结构组成

有个细节是测试用例里的状态只有三个 设计/就绪/已关闭

之前有人问我,怎么没有“已完成”之类的状态,不然如何表达我测试完了,我一愣。

继续琢磨下发现测试用例本身是没生命周期的,他的生命周期是隶属于他所属的测试计划

也就是测试用例是可以放到多个测试计划里,每个测试计划下可能成功可能失败,但它自身是没生命的

隔壁的五颜六色测试用例里就长这样

测试人员应该如何使用

前方大概聊了下TFS下的设计套路,下面聊聊作为一个QA如何使用。

1.创建测试计划

创建下,关联当前迭代,没啥好说的,一步略过。

2.筛选需要测试的需求

对着测试计划右键,可以通过这2个进行筛选,我觉得好一点做法是创建一个查询,制订好对应查询的条件那么就可以恒定用第三个基于查询的套件,我这选择第二个基于需求的套件。

查出了一堆任务,然后从中捞是分配给我的测试任务,比如我这里选择前三个后创建套件(Create Suites)

自动根据你选择的积压工作项创建了测试套件,然后我要在每个套件下创建对应测试用例

好,现在用例有了,我们运行测试,运行测试会有2种情况,分为自动化了的和没自动化的,自动化的下篇讲,先谈未自动化的。

选中用例,点击运行,之后会弹出一个框,就是对照着你的测试用例出来的每个步骤,那我们照着测试流程来一轮把

卧槽,该页无法显示,这是bug

先记录下我是在第一个步骤就出错了,然后上方有个创建Bug,点下然后填写好对应信息扔给开发

关于手工测试的时候,可以在浏览器安装对应插件之后,还能录制执行的动作,支持截屏等

https://marketplace.visualstudio.com/items?itemName=ms.vss-exploratorytesting-web

由于目前出现了Bug,所以测试流程中断,保存下

之后Dev说修好了,在重新走一次验证流程。

后续

由于各种流程还在探索中,暂时主要就上述部分。

另外还应该提供几个图表给测试人员看,暂时能想到的几个:

①当前已经可以进行测试了的任务(开发已提交了的)

②当次迭代还没被分配测试套件的任务

③手头还完成(即失败或未开始的)测试任务

④自动化测试占比

这几个应该要在一个测试专用的Dashboard里展示出来,让大家都能共享知道进度

手工测试部分和测试流程部分大概就那么多,自动化部分还在坑里中。

另外Test里还有Parameter和Configuration之类的,虽然感觉我能理解它是什么,但是不知道怎么用,微软官方里感觉也写的不明不白

一切都是自己摸索的,如果有误还望指正

Azure Devops测试管理(上)的更多相关文章

  1. Azure DevOps Server 入门实践与安装部署

    一,引言 最近一段时间,公司希望在自己的服务器上安装本地版的 Azure DevOps Service(Azure DevOps Server),用于项目内的测试,学习.本着学习的目的,我也就开始学习 ...

  2. 微软Azure DevOps自动化部署

    1.准备一个https://hub.docker.com账号,申请一个免费的镜像仓库(免费账户可以申请一个) 创建docker远程镜像库 2.新建一个mvc的项目 给这个项目加上Dockerfile文 ...

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

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

  4. [Azure DevOps] 管理测试计划、测试套件和测试用例

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

  5. 在macOS苹果电脑上安装Azure DevOps Server(TFS)代理

    1. 概述 MacOS是一套运行于苹果Macintosh系列电脑上的操作系统,是首个在商用领域成功的图形用户界面操作系统.Iphone应用软件的开发人员,都使用运行macOS的电脑或mini盒子进行软 ...

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

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

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

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

  8. 在Azure DevOps Server(TFS)上集成Python环境,实现持续集成和发布

    Python和Azure DevOps Server Python是一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,最初主要为系统运维人员编写自动化脚本,在实际应用中,Python已经在前端 ...

  9. [Azure Devops] 使用 Azure Repos 管理代码

    1. 什么是 Azure Repos Azure Repos 是一组版本控制工具,可用于管理代码.无论您的软件项目是大型项目还是小型项目,都应尽快使用版本控制. 版本控制系统是可帮助您跟踪随时间变化对 ...

随机推荐

  1. 论文翻译——Dynamic Pooling and Unfolding Recursive Autoencoders for Paraphrase Detection

    Dynamic Pooling and Unfolding Recursive Autoencoders for Paraphrase Detection 动态池和展开递归自动编码器的意译检测 论文地 ...

  2. 13)PHP,文件加载(include和require)

    有四种文件加载的语法形式(注意,不是函数): include,  include_once,  require, require_once; 他们的本质是一样的,都是用于加载/引入/包含/载入一个外部 ...

  3. Spring Boot原理

    Spring 钩子之BeanFactoryPostProcessor和BeanPostProcessor的源码学习 https://www.jianshu.com/p/a90a3e617ba6 spr ...

  4. C#在listview控件中显示数据库数据

    一.了解listview控件的属性 view:设置为details columns:设置列 items:设置行 1.将listview的view设置为details 2.设置列属性 点击添加,添加一列 ...

  5. [GX/GZOI2019]特技飞行(扫描线+置换)

    感觉是6题中最难的一题,其实这题是一个二合一: 第一问:给定平面上若干点和k个关键点,关键点覆盖一个45°倾斜的正方形范围r,求有多少点被至少一个关键点覆盖.这个可以曼哈顿转切比雪夫距离,然后再扫描线 ...

  6. shell_分析服务器日志

    1.查看有多少个IP访问: awk '{print $1}' log_file|sort|uniq|wc -l 2.查看某一个页面被访问的次数 grep "/index.php" ...

  7. 2019 年百度之星·程序设计大赛 - 初赛一 1005 Seq(数学规律)

    http://bestcoder.hdu.edu.cn/contests/contest_showproblem.php?cid=861&pid=1005 Sample Input Sampl ...

  8. Yii框架的学习指南(策码秀才篇)1-3 我是这么学习的yii framework (不间断更新中)

    Ⅰ.基本概念一.入口文件入口文件内容:一般格式如下:<?php $yii=dirname(__FILE__).'/../../framework/yii.php';//Yii框架位置$confi ...

  9. Null Hypotheses| Alternative Hypotheses|Hypothesis Test|Significance Level|two tailed |one tailed|

    9.1 The Nature of Hypothesis Testing Over the years, however, null hypothesis has come to mean simpl ...

  10. 最大流/最小割模板(isap) POJ1273

    isap模板核心代码: //d[]为距离标号数组,d[i]表示节点i到汇点的距离 //gap[]为GAP优化数组,gap[i]表示到汇点距离为i的节点个数 int dfs(int k,int flow ...