内容


使用 IBM Rational ClearQuest Test Management 进行测试管理和跟踪

一个案例研究

Comments

案例研究的环境

对 Linux®、 UNIX®,以及 Microsoft®Windows®的 IBM DB2 数据库软件的开发包括跨越不同地区的多个团队。每一次发布事实上都非常复杂而且需要持续的监控来验证它的质量。在如此大的项目中,每个团队可能都使用不同的方法来管理和跟踪测试。IBM DB2 Function Verification Test 团队也不例外。因此,我们抱着能够找到一个更有效的跟踪,报告以及监控功能性测试过程方法的希望,在 IBM Rational ClearQuest 中利用新的测试管理功能进行研究。这个 Function Verification Test 团队从 2006 年 1 月到 2006 年 5 月对 ClearQues 测试管理的 Beta 2 版本进行了评估。

ClearQuest 测试管理的概况

Rational ClearQuest 软件是一个知名的缺陷和变更的跟踪系统。ClearQuest 测试管理是最新的 Rational 测试管理解决方案,构建这个方案作为 IBM Rational Test Manager™的备选方案。ClearQuest 测试管理作为一个模型运行在 ClearQuest Version 7 顶层。它整合了其它 IBM 产品,比如 Rational ClearCase®、 Rational RequisitePro®、 Rational Manual Tester、 Rational®Functional Tester,以及 Rational®Performance Tester。 ClearQuest 测试管理还提供了一个能够安装在 ClearQuest V7 客户端的插件。

ClearQuest 测试管理在何时以及如何发挥作用

ClearQuest 测试管理能在以下四个测试区域发挥作用:

  • 测试计划:定义并给测试用例分组
  • 测试编写:为执行测试用例创建文档或者自动化脚本
  • 测试执行:运行使用 Rational Functional Tester 或者 Rational Performance Tester 编写的测试用例,记录测试结果并将它们储存在备份的数据库中。
  • 测试报告:通过执行内嵌的或者自定义创建的查询或者图表在计划期间对测试进行分析

ClearQuest 测试管理客户端

ClearQuest 测试管理提供了三个图形化的用户界面(GUI):

  • 完全的 Eclipse 插件 ClearQuest 客户端
  • 一个本地的 ClearQuest 客户端
  • 一个 Web 客户端

每个界面提供不同级别的功能特性。Eclipse 客户端拥有最多的性能。图 1中的图表比较了每个客户端的性能。

图 1. 三个 ClearQuest 测试管理客户端的对照
图 1. 三个 ClearQuest 测试管理客户端的对照
图 1. 三个 ClearQuest 测试管理客户端的对照

ClearQuest 测试管理对象模型术语

ClearQuest 测试管理利用下面的术语来定义对象模型。

  • 测试计划:按等级对测试用例进行分组。一个测试用例可能仅属于一个测试计划。
  • 测试用例:不包含脚本或者执行指令。
  • 已配置测试用例:带有已应用配置的测试用例。
  • 配置:定义一个测试用例的环境,比如操作系统,机器规格,软件版本等等。
  • 迭代:IRUP 迭代,阶段,循环等等。
  • 测试集:能够对测试脚本执行连续的执行。
  • 测试脚本:IBM®Rational®Manual Tester、 IBM®Rational®Functional Tester,或者 IBM®Rational®Performance Tester 中的资产。包括实际的脚本,或者执行指令。一个配置好的测试用例都带有一个测试脚本。
  • 资产注册表:存储所有与 ClearQuest 测试管理相关联的资产的文件地址。

图 2 显示了 ClearQuest 测试管理的对象模型。

图 2. ClearQuest 测试管理的对象模型
图 2.  ClearQuest 测试管理的对象模型的图表
图 2. ClearQuest 测试管理的对象模型的图表

测试领导者或者经理创建了测试计划,这个计划通过图 3 中举例说明的状态(或者阶段)不断演变。这个计划在编写阶段处于 Draft 状态,评审过程处于 Foreview 状态,然后进入 Approved 阶段。

图 3. 测试计划不断演进过程的不同状态
图 3. 测试计划不断演进过程的不同状态

每个测试用例也可以由状态来定义。当团队正在对测试用例进行定义时它正处于 Draft 阶段,当完成对它的定义后,它就转换到 Planned 阶段。(参见图 4)

图4. 测试用例演进过程中的状态
图4. 测试用例演进过程中的状态

当测试用例在开发过程中时,相应的配置测试用例处于 Draft 状态,这表明了一个成功的执行。如果一个缺陷或者其它问题阻碍了这个测试用例的完成,那么这个已配置测试用例就会被标记为 Blocked。(请看图 5)

图 5. 已配置测试用例的状态
图 5. 已配置测试用例的状态

如图 6 所示,测试集的状态与已配置测试用例的状态是一样的,因为一套就代表一组已配置测试用例。

图 6. 测试集的状态(与已配置测试用例一样)
图 6. 测试集的状态

从 ClearQuest 测试管理内部执行测试用例

ClearQuest 测试用例提供了为已配置测试用例调用合适的测试工具的能力。它包括阅读测试工具创建的测试日志的能力,以及为已配置测试用例创建测试日志结果的能力。利用 ClearQuest 的企业级的测试管理支持 Rational Manual Tester、 Rational Functional Tester、 Rational Performance Tester,以及 Eclipse TPTP 测试框架工具(JUnit、手册,以及 URL)。

注意:
测试执行在 ClearQuest Client for Eclipse(一个 Eclipse 插件)中得到支持,它是唯一能够支持所有测试工具的客户端。而 ClearQuest 客户端(Eclipse RCP, 或者功能全面的客户端平台)仅仅支持 Rational Manual Tester 脚本。

利用 ClearQuest 测试管理,您也可以创建使用不支持的测试工具的测试用例和已配置测试用例。这可以通过使用叫作 ExternalFile的测试类型来实现。您可以为一个 ExternalFile 测试类型的配置测试用例利用 ClearQuest 的形式,人工地记录测试结果。对于这些不支持的工具,您可以执行配置测试用例,然后通过输入这个测试运行的数据和时间,结果,以及其它与这个测试相关的信息来创建这个测试结果的报告。

注意:

  • SPI Dynamics (请参见参考资源)为企业的测试管理,和 ClearQuest 一起整合了它们的测试工具。当它们的适配器安装以后,您将一个执行与一个测试用例或者已配置测试用例联合起来时,QAInspect 看起来似乎是一个附加的测试类型。
  • Ring Zero 已经为 Mercury Quick Test Pro 和 Mercury WinRunner 开发了适配器。当安装以后,这些适配器能够使企业层次的测试管理和 ClearQuest 联合起来,并能够利用 Mercury Quick Test Pro 或者 WinRunner 脚本执行一个测试用例或者一个已配置测试用例。(请看参考资源。)

访问这个测试用例的脚本:使您的测试脚本实现自动操作是建立在单个的测试工具的基础上的。因此,ClearQuest 测试管理必须能够访问这个文件系统或者测试脚本所在位置的 IBM®Rational®ClearCase®的地址。当您编写完这个测试用例或者配置测试用例以后,您就可以对它进行修改并将它与脚本连接起来。ClearQuest 测试管理维护一个测试执行期间使用的指向脚本的指示器。

监控并分析测试结果

ClearQuest 提供了一系列内置的查询,图表,以及测试管理分析所使用的曲线图,覆盖从计划到执行的整个过程。您可以看到需求变更或者缺陷的定位对测试用例带来的影响。您还可以看到已计划的和已经执行的测试用例的状态,以及在特定迭代间隔中已通过的失败的结果。更重要的是,您可以看到测试演进过程中,随着时间的变化,总的测试用例的数量以及已经通过的或者失败的测试数量的趋势。

图 7中的屏幕截图显示了一些内嵌的图表和查询。

图 7. 测试报告的内置图表和查询的范例
图 7. 测试报告的内置图表和查询的范例
图 7. 测试报告的内置图表和查询的范例

除此之外,您可以在 ClearQuest 内部构建您自己的自定义查询。ClearQuest 还可以支持其它的报告工具,比如 Crystal Reports, IBM Rational ProjectConsole,以及 IBM Rational SoDA®,如果您愿意可以利用这些产品之一来构建自定义的查询,图表或者曲线图。

安装 ClearQuest 测试管理的步骤

在任何特定版本的 DB2 for Linux, UNIX,以及 Windows (以后,就简单地称作 DB2)中,都有相当多的解决方案,每一个都能够解决一个用户的问题或者实现一个需求。有些解决方案非常复杂并包含多个条目(工作项),然而有些却仅仅包含一个条目。这个案例研究对利用 ClearQuest 测试管理在发布,解决方案,或者排列项层次跟踪它们的功能验证测试进展的可行性进行了评估。 DB2 在不同的平台中都得到支持,包括 UNIX、Linux,以及 Windows。因此,每个测试用例都需要与一个配置联合起来的观点具有十分重大的意义,因为 DB2 Function Verification Test 团队是在不同的配置下运行每个测试用例(支持的操作系统平台或者支持的系统配置)。我们选择与这个项目的 ClearQuest for Eclipse 客户保持一致,因为它能够提供最丰富的功能。

这个部分的剩余的部分描写了我们如何安装基本的 ClearQuest 测试管理环境。

步骤 1. 为 DB2 开发自定义 ClearQuest 测试管理对象模式

在 DB2 过程的基础上,我们描绘 ClearQuest 测试管理对象模型来满足我们的需求。我们对所有使用的平台以及我们在每个平台中使用的不同的模型进行配置。例如, DB2 支持大规模并行处理(MPP)构件,并能在单个的分区 (EE) 或者多个分区 (EEE) 上运行。DB2 还支持在一个单一系统中的单个或多个处理器的对称式多处理(SMP)。在特定的版本中我们使用一个资产注册表来代表一个解决方案。(请看图 8)

图 8. DB2 自定义 ClearQuest 测试管理对象模型
图 8. DB2 自定义 ClearQuest 测试管理对象模型
图 8. DB2 自定义 ClearQuest 测试管理对象模型

对于一个版本的每个解决方案,我们要么对每一行条目有一个或者多个测试计划,或者对于一个解决方案层次综合测试有一个测试计划,要么两者都有。每个测试计划都包含多个计划好的测试用例。每一个测试用例都会与一个支持的系统配置联合起来,例如:IBM AIX®UNIX EE 环境、IBM AIX UNIX EEE 环境、Microsoft Windows EE 环境,或者 Microsoft Windows EEE 环境。测试脚本就会与已配置测试用例联合起来。对于不同已配置测试用例重复利用相同的测试脚本是很可能会发生的。

每个已配置测试用例需要至少与一次迭代相关联。我们将一次迭代定义为一个阶段,一个里程碑,或者一个时间段。比如,一个最初的构建测试循环可以是一个测试迭代。它有一个名称以及开始和结束的日期。它属于一个资产注册表。这意味着我们必须对每个解决方案定义一组迭代或者里程碑。

ClearQuest 测试管理的 Beta 2 版本并没有发布有关如何执行一个自定义的适配器的 API,使 ClearQuest 测试管理能够与其它测试工具联合起来并执行一个已配置测试用例的问题。因此,我们采取利用 Rational Manual Tester 的方法,并将一个仅包含一个测试单元的测试文档与每一个已配置测试用例联合起来。这个测试是在 ClearQuest 测试管理设置之外执行的,这意味着测试人员应该使用 Rational Manual Tester 对每个成功或者失败的测试用例进行标记。

在这个评估中,我们还希望用测试集做代表对产品的不同组件进行测试。每个解决方案中的不同配置的测试用例可能测试这个产品相同的区域或者组件。然而,这样做的局限性是不能联合来自不同资产注册表的配置测试用例形成一个套件,从而阻碍了我们的执行。

利用适当的 schema,我们开始安装备份服务器。

步骤 2. 为 ClearQuest 测试管理安装 DB2 作为备份服务器

要为 ClearQuest 测试管理创建一个备份服务器,我们在这台机器上选择了一个 IBM AIX 系统和一个用户 ID 来创建两个数据库。一个数据库是用于 schema 存储的,另一个则是一个用户数据库。要达到这个目的,我们将桌面作为 schema 存储库的名称,使用 desktop 作为这个用户数据库的名称。

注意:
从这里开始,我们将用您可以理解的方式描述必须的任务,并获取安装 ClearQuest 测试管理的经验。

在发出一个创建数据库的命令之后就会创建两个数据库,您可能需要配置这个用户数据库来添加一个新的缓存池,然后按照以下两个步骤将这个页面的大小设置为16k:

创建一个缓存池:

  1. 连接这个数据库,然后发出显示在列表 1中的命令。
列表 1. 创建一个新的缓存池
db2 connect to [user database name] user [user name] using [password]  
db2 create bufferpool [buffer pool name] immediate size 250 pagesize 16k
  1. 创建一个使用这个新缓存池的新表格空间。对于这个 AIX 平台请看列表 2。对于 Windows 平台,请看列表 3
列表 2. 在 AIX 平台上创建一个使用新缓存池的新表格空间:
db2 connect to [user database name] user [user name] using [password]  

db2 "create regular tablespace ts4cq pagesize 16k managed by system 
using ('/home/regres1/regres1/NODE0000') extentsize 16  
overhead 12.67 prefetchsize 16 transferrate 0.18 bufferpool  
[buffer pool name] dropped table recovery off"
列表 3. 在 Windows 平台上创建一个使用新缓存池的新表格空间:
db2 connect to [user database name] user [user name] using [password]  

db2 "create regular tablespace [table space name] pagesize 16k managed by system 
using  ('c:\db2\node0001') extentsize 16 overhead 12.67 prefetchsize 16 
transferrate 0.18  
bufferpool [buffer pool name] dropped table recovery off"

步骤 3. 安装一个许可服务器

安装一个许可服务器,这样用户就可以指定这个许可服务器来使用 ClearQuest 测试管理客户端。在许可服务器安装发射台上与 GUI 一起进行了几个简单的步骤之后,您将被询问从一个文件中输入您的许可密码。当您输入许可密码之后,您应该可以看到如图 9 所示的情景。

注意:
您的许可类型,失效期,许可有效期,以及数量都是建立在您所购买的许可证基础上的,因此它们与您在这里所看到的有所不同。

图 9. 一个许可服务器安装的例子
图 9. 一个许可服务器安装的例子
图 9. 一个许可服务器安装的例子

步骤 4. 创建一个 schema 存储库并配置这个用户数据库

要创建这样一个 schema 数据库,您的管理人员必须首先启用 ClearQuest Maintenance 工具并键入备份 DB2 数据库服务器的主机名,schema 数据库名称,以及用户 ID 和密码,用来连接到 DB2 数据库。当您创建连接轮廓时可以选一个 schema 存储库名称。实际的备份数据库可以有一个不同的名称。(在这个例子中,这个数据库的名称为 desktop, schema 存储的名称为 cqtm。)

您可以输出这个轮廓,这样其他用户仅仅只需要输入这个轮廓即可。在一个开发环境中,备份数据库的用户 ID 和密码通常隐瞒最后一个用户。由于这个原因,ClearQuest 测试管理的管理人员会创建一个轮廓并将它分配到最终的用户,这样他们就安装单个的客户端。

用 Rational ClearQuest Designer 开始配置您的空白备份 DB2 用户数据库,如图 10 所示。

图 10. 开始创建一个新的用户数据库
图 10. 开始创建一个新的用户数据库
图 10. 开始创建一个新的用户数据库

要用 ClearQuest 测试管理注册您的用户数据库,按以下步骤进行,从图 11 到图 13 有详细的说明:

  1. 创建一个新的逻辑数据库(图 11)。
  2. 将这个数据库与您先前创建的用户数据库连接起来(图 12)。在这个例子中,用户数据库称作笔记簿
  3. 接受默认的暂停时间储存间隔。(对于步骤 3没有显示具体的说明。)
  4. 将用户数据库与 schema 联合起来(图 13)。
图 11. 步骤 4 的第一步,创建一个逻辑数据库
图 11. 步骤 4 的第一步,创建一个逻辑数据库
图 11. 步骤 4 的第一步,创建一个逻辑数据库
图 12. 步骤 4的第二步,连接新的数据库到用户数据库
图 12. 步骤 4的第二步,连接新的数据库到用户数据库
图 12. 步骤 4的第二步,连接新的数据库到用户数据库
图 14. 步骤 4的第四步,将用户数据库与 schema 联合起来
图 14. 步骤 4的第四步,将用户数据库与 schema 联合起来
图 14. 步骤 4的第四步,将用户数据库与 schema 联合起来

步骤5. 在 ClearQuest 测试管理工具中创建一个新的用户帐户

要创建一个新的用户帐户,您需要有管理员特权。默认情况下,ClearQuest 测试管理利用一个管理员 ID,即admin,密码为空,但是要确保将它更改为您选定的所需密码。您需要利用这个 ID 和密码为其他用户创建帐户和他们最初的密码。

管理员需要启用 ClearQuest User Administration 工具,它允许被授权的用户来添加用户,编辑现存用户的属性,更改权限。紧接着的步骤和从图 14 到图 18 的图表显示了如何将用户名Wenjie Wu添加到用户数据库中去。

  1. 首先,作为 admin 记入系统日志,使用您创建的管理员密码(默认情况下密码为空)。(请参见图 14)
图 14. 通过 ClearQuest User Administration Login 窗口连接到网络主机
图 14. 通过 ClearQuest User Administration Login 窗口连接到网络主机
图 14. 通过 ClearQuest User Administration Login 窗口连接到网络主机
  1. 点击 User Action 并从下拉菜单中选择 Add User(图 15)。
图 15. 开始添加新的用户
图 15. 开始添加新的用户
图 15. 开始添加新的用户
  1. 将显示一个 Add User 窗口。键入这个信息(同样也显示在图 16):
  • 登陆:wenjiewu
  • 密码:键入这个用户的密码,然后在网域中重新键入来确认。
  • 名称:Wenjie Wu
  • E-mail:wenjiewu@ca.ibm.com
  • 电话:(905)413-2199
  • 身份:从下拉菜单中选择 Local
  1. 在 Privileges 下的右边,选择 Active UserAll Users/Groups Visible
  2. 在 Subscribe 下,选择 MAR 作为数据库来使用,然后点击 OK。当 Rational ClearQuest User Administration 窗口重新出现时,新用户就应该列出来。
图 16. 键入这个用户的数据库信息
图 16. 键入这个用户的数据库信息
图 16. 键入这个用户的数据库信息
  1. 通过点击 DB Action 将这个变更提交给您的用户数据库,然后从显示的下拉菜单中选择 Upgrade选项(图 17)。
图 17. 将变更提交给您的用户数据库
图 17. 将变更提交给您的用户数据库
图 17. 将变更提交给您的用户数据库

当您看到您的用户数据库更新过的通知(图 18),这个用户就会在 ClearQuest 测试管理中正式地被创建。

图 18. 数据库已经成功被更新
图 18. 数据库已经成功被更新
图 18. 数据库已经成功被更新

前面的所有步骤都是由 ClearQuest 测试管理的管理员完成的。当管理员安装了数据库备份服务器,许可服务器, schema 存储,以及用户数据库之后,接下来的任务就是使每个用户利用您的管理员在步骤 5 中创建的 ClearQuest 测试管理用户 ID 来安装他们单独的 ClearQuest 测试管理客户端。

步骤 6. 为 Eclipse 客户端安装 ClearQuest 测试管理

为 Eclipse 客户端安装 ClearQuest 测试管理相对比较容易。安装向导会指导您完成最初的步骤,然后您就用以下这些步骤来完成剩余的步骤:

  1. 选择指向 Rational License Server 来获取我的许可
  2. 键入在步骤 3中安装的许可服务器的信息。

图 19 和 图 20 中的屏幕截图显示了这两个步骤,在这里 ClearQuest 为客户端安装了许可。(在这个例子中,这个许可服务器的名称为osgiliath.torolab.ibm.com。)

图 19. 利用这个向导来获取您的许可信息
图 19. 利用这个向导来获取您的许可信息
图 19. 利用这个向导来获取您的许可信息
图 20. 输入这个许可服务器的名称
图 20. 输入这个许可服务器的名称
图 20. 输入这个许可服务器的名称

当安装完成之后,您将需要为这个备份数据库配置一个连接。ClearQuest 测试管理支持连接池,由此所有到备份数据库的连接都能够使用共享的用户 ID 和密码。这就是我们在这个案例研究中使用的方法。

要安装这个连接,导入这个您按照以下步骤从 ClearQuest 测试管理的管理人获得的 Profile 文件:

  1. 从 Rational ClearQuest Maintenance 工具,点击File > Import Profile。(请看图 21)
图 21. 导入 Profile 文件
图 21. 导入 Profile 文件
图 21. 导入 Profile 文件
  1. 选择由您的管理员提供的 .ini 文件 (在这个例子中是cqtm)。要导入的连接信息应该已经在 Schema Repository Properties 域被加载。
  2. 然后点击 Finish。(见图 22)
图 22. 选择 cqtm.ini 文件
图 22. 选择 cqtm.ini 文件
图 22. 选择 cqtm.ini 文件

您应该在图 23中可以看到显示的连接状态的截图。注意为了防止错误会创建一个日志文件作为参考。

图 23. 连接状态
图 23. 连接状态
图 23. 连接状态

当您的客户端软件与 ClearQuest 测试管理服务器建立一个连接之后,您就能够建立一个到实际数据库 schema 的连接。下面的步骤向您展示了如何为用户 IDwenjiewu添加一个连接到现存的 ClearQuest 测试管理 schema 存储库 cqtm 中去。

  1. 在 ClearQuest Connection Management 窗口中,在 Database Set 下选择cqtm,然后点击 Add connection (图 24)。
图 24. 添加一个连接到数据库
图 24. 添加一个连接到数据库
图 24. 添加一个连接到数据库
  1. 在 Schema Repository 的显示图中,从下拉的菜单中选择适当的 schema(在这个例子中为 cqtm),然后点击 Next(图 25)。
图 25. 选择您的 schema
图 25. 选择您的 schema
图 25. 选择您的 schema
  1. 键入您的 user ID,然后点击 Finish(图 26)。
图 26. 输入您的用户 ID
图 26. 输入您的用户 ID
图 26. 输入您的用户 ID
  1. 当出现提示时,输入您的密码,然后点击 OK(图 27)。
图 27. 键入您的密码
图 27. 键入您的密码
图 27. 键入您的密码

您应该与 cqtm schema 保持连接,如图 28 所示。

图 28. 验证到这个 schema 的连接
图 28. 验证到这个 schema 的连接
图 28. 验证到这个 schema 的连接

步骤 7. 提醒用户更改他们的密码

当然,这需要他们有修改密码的特权。请看图 15可以得知如何对许可进行授权。因为最初的密码是由管理员分配的,建议您的用户在第一次登陆时更改密码,可以按照以下步骤进行(同样请看图 29):

  1. 启动 ClearQuest User Administration。
  2. 键入用户的用户名称密码,然后点击OK
图 29. 键入用户的登陆信息
图 29. 键入用户的登陆信息
图 29. 键入用户的登陆信息
  1. 右键点击用户登陆名称并选择 Edit User(图 30)。
图 30. 选择哪个用户的权限要被更改
图 30. 选择哪个用户的权限要被更改
图 30. 选择哪个用户的权限要被更改
  1. 更改用户的密码,然后点击 OK (图 31)。
图 31. 更改用户的密码
图 31. 更改用户的密码
图 31. 更改用户的密码

步骤 8. 执行对象模型并键入这个测试的状态

这个部分描述了您需要实现的几项任务,从而完成这个步骤的两个部分:

  • 为每个解决方案创建并展开一个资产注册表
  • 创建一个或者多个配置属性
  • 创建一个或者多个 TM 配置
  • 创建一个或者多个迭代
  • 创建一个或者多个 TM 测试计划并更改状态
  • 创建一个或者多个 TM 测试用例并更改状态
  • 创建一个或者多个配置测试用例并更改状态
  • 将一个脚本与这个配置测试用例联合起来
  • 运行您的测试用例并核查结果
  • 储存这个测试结果
  • 创建并分析测试结果报告

在您开始之前,点击 ClearQuest 工具条之上的View,然后在面板中您想要的显示的位置标记这个选项。现在您已经可以开始按照您的任务列表计划执行任务了。

  1. 为每个解决方案创建一个资产注册表
    1. 点击 File > New > TMasset Registry
    2. 键入您资产注册表的名称,然后点击 OK
  1. 打开这个资产注册表
    1. 右键点击 File Location。这个 Register File Location Wizard 将显示出来。
    2. 选择 Asset Registry 名称,然后点击 Next
    3. 键入 名称作为标号。
    4. 找到 File LocationLog Location 文件夹。
      • File Location 是客户端或者服务器上的一个共享文件夹,包含来自 Rational Functional Tester 或者 Rational Manual Tester 的测试脚本。
      • Log Location 是一个空文件夹,在配置测试用例执行期间会创建记录文件。
  1. 创建一个或者更多的配置属性
    1. 点击 File > New > TM Configuration Attribute
    2. 当您创建配置属性之后,键入配置属性的名称,然后右键点击并选中名称,键入配置值
  1. 创建一个或者更多的 TM 配置
    1. 点击File > New > TM Configuration
    2. 键入您的 TM 配置名称
    3. 要添加一个配置值,就点击 Add 然后点击 Search
    4. 从这个显示的文本中,选择您创建的配置属性中的一个,然后点击 OK
  1. 创建一个或者更多的迭代(您想要跟踪的一段时间)
    1. 点击File > New > TM Iteration
    2. 输入必要的信息:迭代名称开始日期,以及结束日期
    3. 从下拉列表中,选择您创建的资产注册表。
  1. 创建一个或者更多的 TM 测试计划(TMTestPlan)
    1. 点击 File > New > TMTestPlan
    2. 键入您的 TM 测试计划名称作为大字标题,然后从下拉列表中为 OwnerPriority,以及Asset Registry(TM 资产注册表的名称)选择条目。
    3. 通过点击 Add,然后再选择 Search 添加一次迭代,然后点击迭代的名称

提示:
您可以为资产注册表创建不止一个的测试计划,您还可以按照等级的方式在父 TestPlan 下面创建一个子 TestPlan。

  1. 更改这个 TMTestPlan 的状态
    1. 右键点击更改状态,选择 Ready for Review
    2. 然后将这个状态更改为 Approved。(默认的状态是 Draft。)
  1. 创建一个或者更多的 TM 测试用例
    1. 点击 File > New > TM Test Case
    2. 键入您的 TM 测试用例的名称
    3. 在 Test Case Name 下面,选择一个优先级。
    4. 通过点击 Add,将您的测试用例与一个测试计划联合起来,然后点击 Add
    5. 选择迭代的名称,然后点击 OK

提示:
您可以在同一个 TestPlan 下创建一个或者更多的 TestCases。

  1. 将 TestCase 状态从 Blocked更改为 Planned。(默认的状态是 Draft。)
  1. 为每一个 TM 测试用例创建一个或者更多的配置测试用例
    1. 点击 File > New > TMConfigured Test Case
    2. 键入您的配置测试用例的名称
    3. 在 Configured Test Case 名称下面,通过点击 Search Configuration Name for Test Case为这个配置选择一个优先权。
    4. 点击 Select,选择 TestCase 名称,然后点击 OK
  1. 将一个脚本与这个配置测试用例连接起来
    1. 右键点击 Configured Test Case 名称,然后从下拉菜单中选择 Associate Script
    2. 对于 Test Type,选择Rational Manual Tester
    3. 选择 Test 脚本,然后点击 Finish
    4. 通过右键点击这个配置测试用例的名称将这个测试用例的状态更改为 Implemented,然后选择 Change state
  1. 运行您的测试用例并验证结果
    1. 现在,可以运行您的测试用例。
    2. 执行这个配置测试用例之后,您将在右边的面板中看到 Test Result。复选您刚才运行的这个测试用例,右键点击并选中它,再选择 Open log
    3. Rational Manual Tester 将展示 Test Execution Details。您将可以看到这个结论。
  1. 保存测试结果
    1. 右键点击并选中 Test Result,然后点击 Commit
    2. 这个测试结果将从 Uncommitted Results 移动到 Recently Committed Results。
  1. 创建并分析测试结果报告
    1. 转到 ClearQuest Navigator。
    2. 创建报告,查询,以及图表来分析您的测试结果。

步骤 9. 回顾您的测试进展报告

当您完成这个安装之后,就该检验一下您能搜集到什么样的信息来作为您努力的收获。可以在一段时间搜集数据,您可以通过提交一个查询或者创建一个图表来产生下面的报告类型。

注意:
在这个案例研究的环境中,Draft 状态表示这个测试用例已经编写但是还没有被执行。Implemented表明这个测试用例已经成功,Blocked 意味着这个测试用例失败,由于一些显著错误的原因。

  • 剩余工作以及测试趋势的月报
    1. 利用内嵌的图表,选择 Expand TMCharts(图 32)。
    2. 选择 CTC > State Trend
图 32. 剩余工作以及测试趋势的月报
图 32. 剩余工作以及测试趋势的月报
图 32. 剩余工作以及测试趋势的月报
  • 利用自定义的查询,对测试用例当天的计划,编写,以及执行进行报告(图 33)
图 33. 查询关于测试用例的计划、编写,以及执行日期的问题
图 33. 查询关于测试用例的计划、编写,以及执行日期的问题
图 33. 查询关于测试用例的计划、编写,以及执行日期的问题
  • 利用自定义的查询,对测试用例计划,编写,以及截止今天的执行进行每周一次的进展报告(图 34)
图 34. 查询关于测试用例计划,编写,以及执行的每周进展报告的问题
图 34. 查询关于测试用例计划,编写,以及执行的每周进展报告的问题
图 34. 查询关于测试用例计划,编写,以及执行的每周进展报告的问题
  • 利用内嵌的图表,对截止今天的成功的或者失败的测试用例进行报告 (图 35).
图 35. 测试用例截止今天的成功或者失败的报告
图 35. 测试用例截止今天的成功或者失败的报告
图 35. 测试用例截止今天的成功或者失败的报告
  • 利用内嵌的图表,通过每周的进展情况对测试用例的成功或者失败进行报告(图 36)。
图 36. 截止今天的成功或者失败的测试用例报告
图 36. 截止今天的成功或者失败的测试用例报告
图 36. 截止今天的成功或者失败的测试用例报告

遇到的问题以及工作背景

我遇到过两个问题,并且我们发现在这里的工作背景中有所描述。

问题 1. 更改过期的用户数据库的密码

在每个 ClearQuest for Eclipse 客户端上,每个用户都需要利用管理员创建的 profile 再次安装这个连接。因此,管理员需要创建一个新连接 profile 并将它分配到每个用户,然后按照以下的步骤重新对用户数据库进行配置:

  1. 启用 ClearQuest 设计工具。
  2. 像管理员一样在网络联机的主机上进行操作。
  3. 当遇到要打开一个计划的提示时,点击 Cancel
  4. 点击 Database 键符,然后选择更新用户数据库属性
  5. 确保这个逻辑数据库名称已经被选中(在这个例子中是,MAR),然后点击 Properties
  6. 将密码域中的密码更改为新密码。
  7. 点击 Update
  8. 点击 OK
  9. 关闭 ClearQuest 设计工具。

问题 2. 将一个测试脚本与配置测试用例连接起来

当您尝试将一个 Rational Manual Tester 测试脚本与一个配置测试用例联合在一起的时候,如果获得一个关于 URL 域无效值的错误消息,(请参见图 37显示的屏幕截图),这里,有一个解决问题的方法:

  1. 将 File 域添加到 TMExternalFile 记录类型,并将 Unique Key 从 URL 移到 File 域中,
  2. 然后在 File 域中,TMTestCase 和 TMConfiguredTestCase 窗体中将参考更改为 URL 域。
图 37. 无效的 URL 值的错误消息
图 37. 无效的 URL 值的错误消息
图 37. 无效的 URL 值的错误消息

结果和未来开发的建议

ClearQuest 测试管理在跟踪测试进展中被证明是非常有用的。它还紧紧地与 Rational ClearCase 和 ClearQuest (缺陷)结合在一起。如果您的产品代码和测试用例版本被 ClearCase 控制着,如果这个测试是在 Rational Functional Tester 或者 Rational Performance Tester 窗体中编写,那么您就可以很容易地开始这个执行。如果您的缺陷和测试储存库在同一个服务器上被管理,如 ClearQuest,那么您将能够在同一个客户端中与测试用例和缺陷报告一起工作。在软件开发中利用 ClearCase 和 ClearQuest,Rational TestManager 已经可以很自然地适合任何环境了。

最后,要在一个 DB2 环境中部署 ClearQuest 测试管理,我们需要创建我们自己的,自定义化的适配器,这样我们就可以利用这个适配器执行我们的 Perl-based 测试工作,如测试用例在 Rational Functional Tester 或者 Rational Performance Tester 中编写,这样测试结果也将以一种 ClearQuestand 测试管理能够解析和理解的方式编写。

我们已经向 ClearQuest 测试管理开发团队提交请求,为将来的发布考虑以下附加的性能或者选项:

  • 按照发布将资产注册表进行分组。场景:我们有一个产品的 Release 1,我们要创建10个注册。对于 Release 2,我们要创建10个不同的注册表。我们需要能将它们分组的方法。
  • 对已配置测试用例使用两种 Draft 状态。这将使状态变得更加有描述性。例如,一个测试用例要么没有被编写,要么已经编写但是没有运行。
  • 创建两个缺陷与 Configured Test Case 1 连接起来。当我们发现 Configured Test Case 2 因为这个错误而失败时,我们就不能在实际上没有创建测试记录的情况下将这个失败与相同的错误联系起来,也不能将一个测试脚本与测试日志联系起来。
  • 为默认的查询添加一个缺陷数量字段。默认情况下,这个状态查询不包括显示配置测试用例缺陷数量的字段。通常情况下,我们可以通过作为管理员登陆进去并更改这个显示字段来处理这个问题,但是要对每个解决方案这样处理(资产注册表),这将十分耗费时间。

相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=258652
ArticleTitle=使用 IBM Rational ClearQuest Test Management 进行测试管理和跟踪
publish-date=09272007