使用 Rational Quality Manager 对软件测试生命周期进行管理的最佳实践

本文介绍了如何使用 Rational Quality Manager(RQM)对软件测试生命周期进行管理的最佳实践。

张晋, 软件工程师, I.B.M.

张晋的照片张晋,2009 年加入 SPSS(IBM),软件工程师,负责 IBM SPSS C"DS 的测试工作。



孙晓宇, 软件工程师, IBM China

孙晓宇的照片孙晓宇,西安工程大学硕士毕业。2008 年加入 SPSS(IBM),软件工程师,从事 IBM SPSS CaDS 的测试工作。



韩晓鹏, 软件工程师, IBM China

韩晓鹏,IBM 西安实验室的软件工程师,来自 SPSS Collaboration and Deployment Services 部门,从事后台自动化开发与测试工作。



2012 年 12 月 21 日

简介

下载 IBM® Rational® Quality Manager 试用版  |  在线试用 IBM Rational 协作化生命周期管理解决方案
下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。

对于软件测试团队来说,选择一个好的测试管理工具往往能使测试工作事半功倍,基于 Jazz 平台的 IBM Rational Quality Manager(RQM)是一个协作性、基于 Web 的工具,它在软件开发的整个生命周期之内,提供了复杂的测试规划与测试评价管理方法。本文基于作者实际使用 RQM 过程中的最佳实践,详细地介绍在软件测试的整个生命周期内如何利用 RQM 来管理测试需求,测试计划,测试用例,测试脚本,测试环境,测试用例执行记录,测试中发现的缺陷,以及使用 RQM 管理测试过程中的评审与批准活动。另外,将介绍利用 RQM 与 Rational Team Concert(RTC),Rational ClearQuest(RCQ)的集成优化对测试过程的管理。

Rational Quality Manager (RQM) 概述

IBM Rational Quality Manager IBM 是一个协作性、基于 Web 的工具,它在软件开发的整个生命周期之内,提供了复杂的测试规划与测试评价管理方法。它建立在 Jazz 平台的基础之上,设计时是给各种规模测试团队使用的。利用 RQM,测试团队可以管理整个软件测试的生命周期。RQM 提供了各种角色的定义,测试经理,测试架构师,测试人员可以方便地在 RQM 提供的平台上协作工作。

测试生命周期概述

不论是瀑布模型,螺旋模型,又或者是 RUP(Rational Unified Process),在测试生命周期内都会经历测试计划,测试设计,测试构造,测试执行以及评审这些过程。有些过程甚至是迭代的。其中,测试计划在测试生命周期内是测试团队重要的指导文档。评审则是保证软件测试质量的一个重要手段,它的主要目是让测试人员尽早地进入测试环节并且可以防止许多缺陷的发生。

使用 RQM 对软件测试生命周期进行管理

利用 RQM,测试团队可以管理软件测试的整个生命周期。具体包括测试计划,测试开发,测试评审,测试执行,以及管理测试中发现的缺陷并且生成相应的测试报告。


使用 RQM 管理测试需求

需求(Requirement)对软件测试人员来说是非常重要的。只有测试人员充分地理解整个应用程序的功能,才能编写出高质量的测试用例,并且为搭建测试环境做好准备。使用 RQM 可以方便地管理测试需求。登陆 RQM,在左侧的质量管理操作类别(Quality management action categories)中点击 Requirement->Create Requirement,如图 1 所示:

图 1. 在 RQM 中创建 Requirement
图 1. 在 RQM 中创建 Requirement

创建 Requirement 之后,就可以接着填写 Requirement 的内容。在实际工作中,软件的功能可能会比较复杂。不同功能模块会有各自的需求文档,并且有的时候根需要根据客户的要求采用一定的格式。这种情况下就可以将文档中的内容复制到 RQM 的 Requirement 中,编辑 Requirement,添加相应的内容,如图 2 中所示:

图 2. 在 Requirement 中添加内容
图 2. 在 Requirement 中添加内容

图 2 大图

当添加完 Requirement 之后,再添加相应的 Reviewer 和 Approver 对 Requirement 内容进行评审。


使用 RQM 管理测试计划

测试计划(Test Plan)是质量保证非常重要的组成部分。测试计划包含测试策略,测试目的,测试环境,测试日程等。使用 RQM,可以很方便地管理 Test Plan。在 RQM 中点击 Planning->Create Test Plan 创建一个 Test Plan,如图 3 所示:

图 3. 创建 Test Plan
图 3. 创建 Test Plan

图 3 大图

在实际工作中,测试团队也许一开始就在使用 RQM 或者其他的管理工具,当然也可能使用文档进行日常测试活动的管理。基于在工作中总结的最佳实践,不同的情况在使用 RQM 时,可以选择如下任意一种方式:

1. 使用 RQM 管理 Test Plan。如图 3 所示,在 RQM 中建立 Test Plan 之后可以创建测试目标 (Test Objectives),测试环境 (Test Environment),测试日程 (Test Schedules) 等。

2. 使用 RQM 加文档的方式管理 Test Plan。正如前面所说,当一个测试团队开始使用 RQM 时,虽然强大的 RQM 可以满足测试管理的需求。但实际上在使用 RQM 之前,测试团队已经使用文档管理测试相当长的时间,在 Test Plan 方面有很多很好的文档的模板(这同时也是测试团队的宝贵财产)。测试团队既希望可以利用已有的文档,又希望可以使用 RQM 提供的强大的功能。RQM 当然可以满足这样的需求并且可以很好地将现有的资源利用起来。RQM 提供了编辑文档的功能,使用它可以直接将文档中的内容复制到编辑区,进行编辑,并且可以很好地保留文档中的格式。这样就可以在项目开发过程中使用已有的模板编写测试目的,测试策略,测试设计等,然后将其复制到 RQM 中。具体的实现方法如下:如图 3 所示,点击 Test Objectives,在 Test Objectives 的页面上,点击 Add Content 进行 Test Objectives 的编辑,如图 4 所示:

图 4. 编辑 Test Objectives
图 4. 编辑 Test Objectives

图 4 大图

在 Test Schedules 中建立 Milestone。项目在开发的过程中,会有开发的里程碑(Milestone)。同样,测试也会有 Test Milestone。在 RQM 的 Test Plan 中可以很方便地管理 Milestone,点击 Test Schedules,添加相应的 Milestone,如图 5 所示:

图 5. 建立 Test Milestones
图 5. 建立 Test Milestones

图 5 大图

Milestone 建立后,当创建测试用例执行记录(Test Case Execution Records)时,就可以选择相应的 Milestone 去更好地管理测试用例执行记录(Test Case Execution Records)。

如果开发中的是一个多平台应用的产品,例如支持多个操作系统(Operation System),多个 Web 服务器,多个数据库(Database),多个浏览器等,那么使用 RQM 管理 Test Environment 就是一个很方便的事情。如图 6 所示建立测试环境(Test Environment):

图 6. 建立 Test Environment
图 6. 建立 Test Environment

图 6 大图

建立好的 Environment 可以在多个 Test Plan 中使用。如图 7 所示,在创建 Test Execution Records 时,可以选择 Test Plan 中已填加好的 Test Environment。

图 7. 添加已有的 Test Environment
图 7. 添加已有的 Test Environment

图 7 大图

评审(Review)是软件测试活动中非常重要的一部分,在 Test Plan 建立并得到完善之后(例如创建 Test Estimation,Entry Criteria,Exit criteria 等),要经过相关人员的评审。首先将 Test Plan 设置成 Ready for Review,然后点击 Formal Review,添加相关的 Reviewer 和 Approver。如果 Test Plan 的 Owner 希望 Test Plan 在某个特定的日期前完成评审,则可以添加 Due Date,如图 8 所示:

图 8. 评审 Test Plan
图 8. 评审 Test Plan

图 8 大图

当 Test Plan 被保存之后,相关的 Reviewer 和 Approver 会收到邮件通知。在评审的过程中,评审的建议可以加到注释(Comments)里。相应的评审进度会显示在 Status 中。


使用 RQM 管理测试用例和测试脚本

测试团队可以方便地使用 RQM 来管理测试用例。点击 Test Cases,可以编写新的测试用例(Test Case)或者添加已有的 Test Case 到 Test Plan 中,如图 9 所示:

图 9. 管理 Test Cases
图 9. 管理 Test Cases

图 9 大图

可以选择直接在 RQM 中编写 Test Case,也可以使用文档进行编辑,然后导入到 RQM 中。点击 Create Test Case Create Test Case 创建新的 Test Case,如图 10 所示:

图 10. 新建 Test Case
图 10. 新建 Test Case

在创建 Test Case 时可以选择 Test Case 的类型(Type),包括功能测试用例(Functional),回归测试用例(Regression),系统测试用例(System)等。Test Case 的 Categories 是可以自定义的,点击 Manage Test Case Category Manage Test Case Category,如图 11 所示:

图 11. 管理 Test Case Categories
图 11. 管理 Test Case Categories

图 11 大图

填写 Test Case 的名字(Name),选择相应的 Category,点击 OK 保存 Test Case,如图 12 所示:

图 12. 已建好的 Test Case
图 12. 已建好的 Test Case

图 12 大图

如图 13 中点击 Test Case 的 Name 打开相应的 Test Case 的页面,在 Test Case 的页面上点击 Test Script,如图 13 所示:

图 13. Test Scripts
图 13. Test Scripts

图 13 大图

在图 13 所示中,可以选择添加一个已存在的 Test Script 或者是新建一个 Test Script。点击 Test Script 新建一个 Test Script,填写 Test Script 的 Name,保存 Test Case。如图 14 所示:

图 14. 已建好的 Test Scripts
图 14. 已建好的 Test Scripts

图 14 大图

点击 Test Script 的 Name 进行 Test Script 的编辑,可以添加测试步骤(Test Step)到 Test Script,如图 15 所示:

图 15. 编辑 Test Scripts
图 15. 编辑 Test Scripts

图 15 大图

除了管理手动(Manual)的 Test Script,RQM 同时也可以方便地管理自动化测试脚本。自动化测试脚本是基于测试用例的。当写好测试用例之后,就可以决定哪些测试用例可以用自动化来实现,这样可以在回归测试时运行自动化测试脚本。点击左侧的 Construction->Import Script,可以选择从 Rational Functional Tester (RFT) 导入自动化脚本。在导入脚本之前要在 RFT 端配置好要连接的 RQM Server 并且启动 RFT Adapter,如图 16 所示:

图 16. RFT Adapter
图 16. RFT Adapter

在 RQM 中选择相应的 Adapter,填写正确的 RFT 项目路径(Project Path),选择 RFT Test Script,点击 Finish,如图 17 所示:

图 17. 导入 RFT Test Scripts
图 17. 导入 RFT Test Scripts

图 17 大图

在成功地导入自动化脚本之后,就可以将 RFT Test Script 添加到 Test Case 中,并且在 Test Case 里运行 RFT Test Script 并且可以查看 RFT 运行 Test Script 的结果。

在 Test Case 建好之后,还有一个非常重要的步骤,那就是对 Test Case 进行评审。打开之前建立的 Test Case,点击 Formal Review,设置 Test Case 的状态为 Ready for Review,添加相关的 Approver 和 Reviewer 并且设置 Due Date。如图 18 所示:

图 18. 评审 Test Case
图 18. 评审 Test Case

图 18 大图


使用 RQM 管理测试用例执行记录

软件的测试活动应该被详细地记录。在 RQM 中,可以创建测试用例执行记录(Test Case Execution Records)来管理测试用例的执行。例如:要执行哪些测试用例,在什么环境和时间内由哪些测试人员执行等。在图 18 中,点击 Test Case Execution Records 进入 Test Case Execution Records 的页面,点击 Test Case Execution Records 创建 Test Case Execution Records,可以选择 Test Environment,如图 19 所示:

图 19. 创建 Test Case Execution Records
图 19. 创建 Test Case Execution Records

图 19 大图

点击 Next,进入选择 Test Environment 的页面,选择 Test Environment,点击 Next 进入选择 Test Case Execution Records 页面,选择相应的 Test Case Execution Records,点击 Finish,如图 20 所示:

图 20. 已建好的 Test Case Execution Records
图 20. 已建好的 Test Case Execution Records

图 20 大图

新建好的 Test Case Execution Records 也应当被评审,这一点容易被忽视。需要评审的最重要的内容是环境的覆盖是否足够。在 Test Case 的 Formal Review 里添加相关人员进行 Test Case Execution Records 的评审。

执行 TER 的时候,可以选择批量的执行。选中要执行的 Test Case Execution Records,点击 Create Result without Execution,选择 Create Result without Execution,如图 21 所示:

图 21. 执行 Test Case Execution Records
图 21. 执行 Test Case Execution Records

可供选择的状态有:Paused,In Progress,Passed,Incomplete,Failed,Error,Blocked。挑选其中的一个,点击 OK,在 Test Case Execution Records 页面就可以查看其执行的状态,如图 22 所示:

图 22. Test Case Execution Records 执行结果
图 22. Test Case Execution Records 执行结果

图 22 大图

如图 22 中所示,如果一个 Test Case 关联了多个 Test Script,那么在执行 Test Case Execution Records 的时候也可以选择要执行的测试脚本。执行的结果也可以通过 View Test Case Execution Records 查询。查询的结果可以被保存,也可以共享给其他人,如图 23 所示:

图 23. 查询 Test Case Execution Records 并且保存查询(Query)
图 23. 查询 Test Case Execution Records 并且保存查询(Query)

图 23 大图

View Test Case Execution Records 是一个非常有用的页面。可以在这里实时地查看测试的进度,统计测试的状态。在 View Test Case Execution Records 页面上,可以过滤出每个 Test Milestone 的 Test Case 的执行情况和每个 Test Case 的 Owner 的测试执行情况等。


使用 RQM 管理测试缺陷

在执行 Test Case Execution Records 的过程中,会发现应用程序的缺陷 (Defect)。使用 RQM 可以方便地管理测试过程发现的 Defect。点击左侧的 Defect->Create Defect 创建 Defect,如图 24 所示:

图 24. 创建 Defect
图 24. 创建 Defect

创建好 Defect 后,可以在 Test Case Execution Records 的执行结果中关联相应的 Defect。点击 Defect 添加已存在 Defect,如图 25 所示:

图 25. 在 Test Case Execution Records 执行结果中关联 Defect
图 25. 在 Test Case Execution Records 执行结果中关联 Defect

图 25 大图


使用 RQM 生成测试报告

当测试执行结束后,通常测试人员要写测试报告,需要相应的测试数据支持。RQM 提供了很多的 Reports 的模板,使用 RQM 可以方便的生成关于 Defect,Execution,Requirement,Test Case 等的报告(Reports)。点击左侧的 Reports->View Reports,如图 26 所示:

图 26. RQM 中 Reports 的分类
图 26. RQM 中 Reports 的分类

其中,Defects 和 Execution 是测试人员在执行测试过程中要经常用的 Reports。点击 Execution->Execution Status by TER Count,选择要生成 Reports 的参数,点击 Run 生成 Reports,如图 27 所示:

图 27. RQM 中生成的 Report
图 27. RQM 中生成的 Report

利用 RQM 与 RTC、RCQ 的集成优化对测试过程的管理

IBM Rational Team Concert (RTC) 基于 Jazz 技术平台的团队协作开发平台,它包含了集成的源代码控制、工作项管理和构建管理等功能。在测试人员使用 RTC 管理工作项的同时,也可以利用与 RQM 的集成来方便地查看在 RQM 里的 Test Plan 和 Test Case。

IBM Rational ClearQuest (CQ) 提供了强大的管理缺陷的能力。利用 CQ 与 RQM 的集成,测试人员可以方便地对缺陷进行跟踪及针对缺陷进行应用程序的回归测试。

RQM 与 RTC 的集成

在 RTC 中可以关联 RQM 的 Test Plan 和 Test Case。这样当测试人员可以在查看 Epic 或者 Story 时点击 Test Plan 的链接跳转到 RQM 里,查看详细的 Test Plan。在查看 Task 的同时也可以方便地查看相对应的 Test Case。如图 28 所示:

图 28. RTC 中关联 Test Plan 和 Test Case
图 28. RTC 中关联 Test Plan 和 Test Case

RQM 与 CQ 的集成

CQ 在管理 Defect 方面更加地强大。当测试团队使用 CQ 管理 Defect 时,可以在 CQ 中关联 RQM 里相应的 Test Case,如图 29 所示:在 Defect 的 Links 中,选择 Related Artifact,然后选择将要关联的 Test Case。

图 29. CQ 中关联 Test Case
图 29. CQ 中关联 Test Case

相对应地,也可以在 RQM 里的 Test Result 中,关联 CQ 中的 Defect。如图 30 所示:

图 30. RQM 中关联 CQ 的 Defect
图 30. RQM 中关联 CQ 的 Defect

图 30 大图

在这个过程中,如果测试人员在执行测试时,在 CQ 里记录了 Defect,但是在 RQM 中并没有对应的 Test Case,那么就应当在 RQM 中创建 Test Case 以便在回归测试时验证 Defect 是否依然存在。并且应当在 CQ 里相应的 Defect 中关联创建好的 Test Case。理想的结果是在 CQ 中的每一个 Defect 都应该有相应的 Test Case 对应。


总结

使用 RQM 测试人员可以很方便地管理测试的整个活动过程。当一个测试团队开始使用 RQM 时,如何做到最佳地使用是需要测试人员快速了解的。本文通过实例详细介绍了如何使用 RQM 对软件测试生命周期进行管理的最佳实践。在实践中,使用 RQM 本身也是一个持续的过程。无论如何,只要开始使用 RQM,就能从 RQM 强大的生命周期管理中使测试工作事半功倍。

参考资料

学习

获得产品和技术

  • IBM Rational Quality ManagerRQM)是一个基于 Jazz 平台技术的实时协作式质量管理环境,可以帮助跨地域分布的开发团队简化协作质量管理,并使其软件质量管理过程实现自动化管理。

    免费下载:

  • 获取免费的 Rational 软件工具包系列,了解最新的 IBM Rational 软件开发工具技术文档和资源。
  • 下载更多免费的 IBM Rational 试用版软件,了解 IBM Rational 软件的最新特性。
  • 获取更多 IBM 试用版软件,并熟练掌握来自 DB2®、Lotus®、Tivoli®,以及 WebSphere® 的开发工具和中间件产品,用这些试用版软件开发您的下一个项目。这些试用版软件可以免费直接从 developerWorks 下载。

讨论

  • 加入 developerWorks 中文社区,developerWorks 社区是一个面向全球 IT 专业人员,可以提供博客、书签、wiki、群组、联系、共享和协作等社区功能的专业社交网络社区。
  • 访问 developerWorks 社区上的 Jazz 技术小组,这里汇集了丰富的 Jazz 平台中文技术资源。 您可以通过这里了解更多关于 Jazz 平台和 Jazz 技术发展趋势的最新信息。
  • 访问 developerWorks 社区上的 敏捷开发小组,在那里您将有机会与更多的开发人员一起交流敏捷开发最佳实践。
  • 加入 IBM 软件下载与技术交流群组,参与在线交流。

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=853099
ArticleTitle=使用 Rational Quality Manager 对软件测试生命周期进行管理的最佳实践
publish-date=12212012