腾讯移动品质中心TMQ [腾讯 TMQ] 测试管理平台大比拼

匿名 · 2016年09月13日 · 最后由 lijian 回复于 2018年08月24日 · 9467 次阅读
本帖已被设为精华帖!

作者:solinazhao

简介

测试管理平台是贯穿测试整个生命周期的工具集合,它主要解决的是测试过程中团队协作的问题,比如缺陷管理、用例管理、测试任务管理等。 目前市面上比较流行的测试管理工具有 QC、 Mantis、 BugZilla、TestLink、Redmine 等。有开源软件,也有商业软件。这些软件的各自侧重点不同:比如 Mantis、BugZilla 偏重缺陷管理,TestLink 则偏重测试用例管理,QC 则更加全面,Redmine 项目管理的概念又更强一些。下表从以下九大功能对各个工具进行对比:测试需求管理、测试用例管理、测试套件管理、测试版本管理、测试计划管理、测试执行管理、缺陷管理、发布管理和分析报表。

国内外有很多测试管理平台,比如 Jira, IBM RQM 等。但大多数平台为商用的不开源的,今天我们主要介绍几个开源的平台,商用平台仅以 QC 为例。

详细介绍

1. TestLink:http://www.testlink.org.cn/

TestLink 是开源的基于 web 的测试用例管理系统,主要功能有产品需求管理、测试用例管理、测试计划管理,并且还提供了一些简单的统计功能。

需求管理:维护用户需求,并可做到与测试用例关联,及统计用例对需求的覆盖度。

测试用例管理:可制定测试计划,维护测试用例及生成测试用例集,记录测试执行结果。

  • 测试计划包括构建一个测试活动,选择测试用例范围,指定哪些人测试哪些用例,测试用例风险及优先级等。

  • 维护测试用例包括对测试用例的增加/删除/修改/导入等操作。

  • 记录测试结果包括记录用例执行的各个状态(尚未执行、通过、失败、锁定)便于后续度量分析。

测试用例输入模式为:

度量分析:包括用例执行进度,主要问题存在点,哪些用例无法执行。及通过分析用例执行结果,报告哪些需求未被测试到,分析测试风险。

可与 Mantis(http://www.mantis.org.cn/)或 bugzilla(https://www.bugzilla.org/)集成进行缺陷管理。

2. QC:

QC 是 HP 提供的企业应用级商业软件,提供项目与组合跟踪功能、版本管理程序、具体需求、测试管理程序、手动测试执行过程、缺陷跟踪程序、测试自动化规划/执行支持服务以及跨项目报告、资产共享和重复利用、开发过程洞察和问题根因分析。

对于需求和测试,它可以做到:

  • 映射需求到一个测试(Linking Requirements to a Test)
  • 映射测试到一个需求(Linking Tests to a Requirement)
  • 映射需求和测试之间的覆盖(Linking Requirements and Tests Coverage)

应用 QC 的测试执行过程如下:

1、检查应用程序,以确定测试范围,包括测试目标,测试策略。
2、构建 Requirements Tree 以定义全部的测试需求。
3、为需求树中的每个需求创建详细的测试需求列表。描述每一个需求,为之分配优先级,必要时添加附件。
4、生成报告和图表以助于分析测试需求。复审需求以确保该需求适宜测试范围。
5、检查应用程序、系统环境和测试资源以确定测试目标。
6、将应用程序划分为模块或功能以备测试。构建 Test Plan Tree,将应用程序划分为测试单元或主题。
7、为每个模块确定你所需要的测试类型。向 Test Plan Tree 中的每个测试添加基本定义。
8、每一个测试连接到相应的一个或多个需求。
9、在 TestPlan Tree 中,通过为测试添加测试步骤开发手度。测试步骤描述了每一个测试的测试操作、需要检查的点和预期结果。然后确定哪些测试需要被自动化。
10、可集成内部或第三方测试工具,应用第三方测试工具为需要自动化的测试创建测试脚本。
11、生成报告和图表以助于分析测试计划数据。复审测试以确定该测试适宜测试目标的程度。
12、定义多个测试集以用于在项目中达到各种各样的测试目标。确定在每个测试集中包括哪些测试 .
13、确定测试执行的时间并给测试人员分配任务。
14、在相应的测试集中自动或手动执行测试。
15、查看测试运行的结构以确定是否在应用程序中发现了缺陷。生成报告和图表以分析测试运行结果。
16、项目相关人员可以在测试过程中的任意阶段添加缺陷。
17、复审新缺陷并且确定哪些缺陷应当被修复。
18、改正那些需要修复的缺陷。
19、测试新创建的应用程序。继续以上过程直到被修复。
20、生成报告和图表以助于分析缺陷修复的过程,还可以帮助确定何时发布相应的程序。

从测试执行过程可以看到 QC 提供了强大的分析统计能力——分析需求,分析测试计划,分析测试执行及结果,分析缺陷修复。

3. Redmine:http://www.redmine.org.cn/

Redmine 是用 Ruby 开发的基于 web 的项目管理软件,是用 ROR 框架开发的一套跨平台项目管理开源系统。还可以集成其他版本管理系统和 BUG 跟踪系统,例如 Perforce、SVN、CVS、TD 等等。这种 Web 形式的项目管理系统通过 “项目(Project)” 的形式把成员、任务(问题)、文档、讨论以及各种形式的资源组织在一起,大家参与更新任务、文档等内容来推动项目的进度,同时系统利用时间线索和各种动态的报表形式来自动给成员汇报项目进度。Redmine 较适用于 100 人以内的项目。Redmine 支持如下功能:

  • 支持多项目
  • 基于角色的访问控制
  • 灵活的问题跟踪系统
  • 支持甘特图和 日历
  • 支持新闻、文 档和文件管理
  • 支持 feeds 和邮件通知
  • 支持依附于项 目的 wiki
  • 项目论坛
  • 简单实时 跟踪功能
  • 可以自定义字段,如时间项,项目和用户
  • 可集成各种版本管理系统 (SVN, CVS, Git, Mercurial, Bazaar and Darcs)
  • 多个 LDAP 认证支持
  • 支持用户自注册
  • 支持多语言
  • 支持多数据库

4. 禅道: http://www.zentao.net/

禅道是国产的一个比较优秀的开源测试管理工具,它从产品、研发和测试分视图进行管理,做到了以下几方面的管理功能,以下各图显示了各个视图下的可见项。禅道这种分视图三级管理界面使得各种分类变得非常清晰.

  1. 产品管理:包括产品、需求、计划、发布、路线图等功能。

  2. 项目管理:包括项目、任务、团队、build、燃尽图等功能。

  3. 质量管理:包括 bug、测试用例、测试任务、测试结果等功能。

  4. 文档管理:包括产品文档库、项目文档库、自定义文档库等功能。

  5. 事务管理:包括 todo 管理,我的任务、我的 Bug、我的需求、我的项目等个人事务管理功能。

  6. 组织管理:包括部门、用户、分组、权限等功能。

  7. 统计功能:丰富的统计表。

  8. 搜索功能:强大的搜索,帮助您找到相应的数据。

  9. 灵活的扩展机制,几乎可以对禅道的任何地方进行扩展。

  10. 强大的 api 机制,方便与其他系统集成。

以下各图显示了各个视图下的可见项,尤其三层打开式使各视图下结构清晰,跳转方便。

产品视图:

开发视图:

测试视图:

事务管理:

5. TestCenter

TestCenter 是国内一个新兴的开源测试管理软件,可以支持需求管理、测试管理和缺陷管理,甚至可以支持事务管理。但经过试用,功能多而不细,故不作详述。

缺陷跟踪:
测试管理软件的另一个方面是缺陷跟踪。缺陷跟踪的软件比较多,国外比较著名的有 Bugzilla,mantis(其他还有),国内有 bugfree(原作者后来自创了禅道)。接下去我们重点介绍下 Bugzilla 和 Mantis。

1. Bugzilla

完善的 Bug 跟踪体系,包括报告 Bug、查询 Bug 记录并产生报表、处理解决、管理员系统初始化和设置四部分. Bugzilla 具有如下特点:

  • 基于 Web 方式,安装简单、运行方便快捷、管理安全。
  • 有利于缺陷的清楚传达。本系统使用数据库进行管理,提供全面详尽的报告输入项,产生标准化的 bug 报告。 提供大量的分析选项和强大的查询匹配能力,能根据各种条件组合进行 bug 统计。当缺陷在它的生命周期中变化时,开发人员、测试人员、及管理人员将及时获得动态的变化信息,允许你获取历史记录,并在检查缺陷的状态时参考这一记录。
  • 系统灵活,强大的可配置能力。Bugzilla 工具可以对软件产品设定不同的模块,并针对不同的模块设定开发人员和测试人员。这样可以实现提交报告时自动发给指定的责任人,并可设定不同的小组,权限也可划分。设定不同的用户对 bug 记录的操作权限不同,可有效控制进行管理。允许设定不同的严重程度和优先级。可以在缺陷的生命期中管理缺陷。从最初的报告到最后的解决,确保了缺陷不会被忽略。同时可以使注意力集中在优先级和严重程度高的缺陷上。
  • 自动发送 Email,通知相关人员。根据设定的不同责任人,自动发送最新的动态信息,有效的帮助测试人员和开发人员进行沟通。

2. Mantis
Mantis 是基于角色和项目模块为划分的 BUG 跟踪系统。Mantis 基本特性有:

  • 个人可定制的 Email 通知功能,每个用户可根据自身的工作特点只订阅相关缺陷状态邮件;
  • 支持多项目、多语言;
  • 权限设置灵活,不同角色有不同权限,每个项目可设为公开或私有状态,每个缺陷可设为公开或私有状态,每个缺陷可以在不同项目间移动;
  • 主页可发布项目相关新闻,方便信息传播;
  • 方便的缺陷关联功能,除重复缺陷外,每个缺陷都可以链接到其他相关缺陷;
  • 缺陷报告可打印或输出为 CSV 格式:支持可定制的报表输出,可定制用户输入域;
  • 有各种缺陷趋势图和柱状图,为项目状态分析提供依据,如果不能满足要求,可以把数据输出到 Excel 中进一步分析;

各角色权限如下表:

总结

作为商业级的应用软件,QC 功能最为强大,最大的优势在于其贯穿整个研发流程的透明化,及其详尽的报告内容。Testlink 很易用,但是缺少缺陷管理这个重要指标,必须与其他工具集成方可。国内测试管理软件中禅道功能很全,甚至包含了事务管理和文件管理,也能与敏捷开发很好地对接,比如使用了燃尽图来标识项目过程。

TAPD 在公司内部应用很广,但与这些优秀的测试管理软件相比,在以下几方面有待提高:

1、项目树形结构及项目间关联关系待提升;

2、没有与 SVN 连接,无法做到迭代与代码提交的对应;

3、项目过程不透明,无法透视开发过程完成率和测试完成率;

4、无预警制度,没有在项目脱离正常开发时自动报警;

5、没有与自动化用例关联,不可自动触发自动用例的执行。

附录:国外商用测试管理工具简介

测试用例管理类:

QMetryhttp://www.qmetry.com/)QMetry 是一个集成的测试管理工具, 可以提供需求管理, 测试用例 (测试用例集) 管理,可与许多主流的缺陷跟踪系统无缝集成,适合在自动化环境下使用。是一个商业产品,有一个 30 天免费试用期。

TestRailhttp://www.gurock.com/testrail/)TestRail 是一个集中在测试用例的管理工具,可以创建测试用例和用例集,跟踪执行和报告。此外,它集成了许多跟踪工具,使得外部系统需求与测试用例关联起来。它附带了一个基于 http API 集成自动化测试结果的收集功能。一个最常见的集成是 Gemini,这是一个事件/票务管理系统 (支持敏捷)。TestRail 是一个商业产品,免费试用

qTesthttp://www.qasymphony.com/qtest.html)由 QASymphony 开发的 qTest 是基于云计算的测试管理工具,有各种典型的关键特性。qTest 在连接器的帮助下,它可以集成 JIRA 整个端到端质量的解决方案,它还集成了其他工具,比如 Bugzilla、FogBugz, Rally 等。不开源。

TestLodgehttp://www.testlodge.com/)是一个全面的测试用例管理工具, 关注在测试相关的 4 个关键方面——测试计划、需求、测试用例集/用例和测试运行。对于其他的操作,它集成了许多主流问题管理工具,可以提供一个全面的解决方案。可免费试用。

Testuffhttp://www.testuff.com/)Testuff 是 Saas 测试管理工具,有许多很酷的功能。典型的测试用例管理功能是默认包括的。此外,它有一个很酷的视频上传报 bug 的功能。集成了一个巨大的 bug-trackers 列表,如 Bugzilla,JIRA,YouTrack, Mantis 等等。它有一个支持自动化工具的 API, 如 QTP, Rational Robot, Selenium、TestComplete 等等。

TestCollabhttp://testcollab.com/)这是一个基于 web 的测试用例管理工具, 因为它的 “Ajax 'ified 接口,它的速度是一个关键特性。它简单易用,集成了所有主要的 bug/问题/事件追踪器,可定制,是良好的分析报告工具。

Geminihttp://www.countersoft.com/solutions/testing/ )支持测试和 QA 以及如项目计划、问题跟踪等其他方面。可以创建测试计划,测试用例,测试运行、可追溯性、测试运行报告等,还有各种集成和扩展。可免费试用。

PractiTesthttp://www.practitest.com/)是一个端到端的测试和测试管理软件。可提供创建测试,运行测试,跟踪缺陷等功能, 它可以很好地与 JIRA,Bugzilla RedMine 三个主要的事件管理工具集成。

全能类:

Jirahttps://www.atlassian.com/software/jira)Jira 是 Atlassian 公司开发的一款缺陷跟踪和任务管理软件,可以对需求、任务、缺陷和改进进行跟踪管理。Jira 可以和其他系统如 CVS、SVN、VSS,Perforce、LDAP、邮件服务等整合,可扩展性好。Jira 与敏捷开发无缝结合,支持 story 分解。适用于中大型项目。Jira 是款商业产品,但对开源项目免费提供缺陷跟踪服务,因此在开源领域应用广泛。

QACompletehttp://smartbear.com/products/qa-tools/test-management/)是最强大的测试管理工具之一。适合敏捷/传统、手动/自动化各类项目。它可以集成 QTP TestComplete。对于自动化项目,可以安排测试运行,远程注册,在任何主机上运行。还提供了发布管理功能及分析功能。它可以集成几乎所有主要的缺陷跟踪工具和源代码控制工具——SVN, Perforce 和 CVS。

*Silk Central *http://www.borland.com/products/silkcentral/)是一个由 Borland 生产的测试管理产品。它几乎覆盖了软件开发过程所有特性,包括跟踪、测试的创建、运行和分析报告。它集成了许多源代码控制和问题跟踪系统,有额外的插件以扩展其功能自动化测试使用如 QTP 、WinRunner 等等。它带有一个视频捕捉功能,支持 SAP 测试。

IBM Rational Quality Managerhttp://www-03.ibm.com/software/products/en/ratiqualmana)IBM 推出的测试管理产品,典型特征是——测试计划、设计、执行、跟踪和报告。它集成了许多合理的产品的自动化、源代码控制和 bug 跟踪。

本章完~

原文链接:http://tmq.cs0309.3g.qq.com/2016/09/lists-testing-management-platform/


TMQ(腾讯移动品质中心)是腾讯最早专注在移动 APP 测试的团队
我们专注于移动测试技术精华,饱含腾讯多款亿级 APP 的品质秘密,文章皆独家原创,我们不谈虚的,只谈干货!

扫码关注我们

扫一扫 关注 TMQ
精彩分享不断
共收到 6 条回复 时间 点赞
恒温 将本帖设为了精华贴 09月14日 10:58

加精理由,忍不住

赞一下,理由,实用

分析的好全面,赞

赞 1 个,还是比较全的
另外大 TD 被一笔略过...也是,毕竟 TD 也不会一路小跑跳出来说话。

感谢,受益良多。
我们在调研了国内外众多的测试管理工具后,发现中文世界仍然属于工具匮乏的局面。包括文中的 qTest 等产品绝大多数也是海外的收费产品,一般测试人员/主管基本没有这个采购权。

因此设计了一套测试管理工具名为飞蛾,涵盖了测试用例、测试计划、测试报告,与 JIRA、Slack 等工具进行了整合。本月已开始邀约测试,可以给测试的同学多一种选择。

我们公司也是用的楼上的管理工具,飞蛾还是挺好用的

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册