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

发表于:2007-9-30 12:00

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Kevin See    来源:IBM

        学习由 IBM DB2 Function Verification Test 团队引导的关于利用 IBM Rational Enterprise ClearQuest 测试管理进行功能性验证测试,跟踪以及监控的可行性的经验和研究结果。这篇文章还展现了工具和安装步骤的大概内容。这篇文章还描述了 ClearQuest 测试管理组件并说明了安装步骤。

        案例研究的环境

        对 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 测试管理客户端的对照

        ClearQuest 测试管理对象模型术语

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

  • 测试计划:按等级对测试用例进行分组。一个测试用例可能仅属于一个测试计划。
  • 测试用例:不包含脚本或者执行指令。
  • 已配置测试用例:带有已应用配置的测试用例。
  • 配置:定义一个测试用例的环境,比如操作系统,机器规格,软件版本等等。
  • 迭代:IRUP 迭代,阶段,循环等等。
  • 测试集:能够对测试脚本执行连续的执行。
  • 测试脚本:IBM Rational Manual Tester、 IBM Rational Functional Tester,或者 IBM Rational Performance Tester 中的资产。包括实际的脚本,或者执行指令。一个配置好的测试用例都带有一个测试脚本。
  • 资产注册表:存储所有与 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. 测试报告的内置图表和查询的范例

        除此之外,您可以在 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 测试管理对象模型

        对于一个版本的每个解决方案,我们要么对每一行条目有一个或者多个测试计划,或者对于一个解决方案层次综合测试有一个测试计划,要么两者都有。每个测试计划都包含多个计划好的测试用例。每一个测试用例都会与一个支持的系统配置联合起来,例如: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. 一个许可服务器安装的例子

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

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

41/41234>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号