扩展 Rational Quality Manager 来管理云中的实验室资产

使用 Rational Test Lab Manager 在虚拟环境中进行测试资产管理

通过扩展 IBM Rational Quality Manager 的 Test Lab Manager 组件,您可以管理虚拟环境中的测试资产,比如云。可以导入虚拟映像和机器的最新定义,以在测试实验室中使用它们,而且您可以按需部署新的虚拟机。本文介绍罗马的 IBM Tivoli 实验室如何试验将 IBM Rational Quality Manager 与 IBM SmartCloud Provisioning V1.2 相集成,以帮助测试团队改善生产力和周期时间,让软件更加经济高效。

Pietro Marella, 咨询工程师, IBM

作者的照片Pietro Marella 于 1991 加入 IBM,1998 年加入 Tivoli 担任罗马 Software Group 实验室的一名软件工程师。他担任过多年有关系统管理产品组合中不同产品的开发人员和设计师。他目前是 Rome QA 区域的测试架构师,专门负责规划、测试和自动化战略。



2012 年 9 月 17 日

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

背景

IBM® Rational® Quality Manager 是一个基于 Web 的测试管理软件,为质量保证团队 (QAT) 提供了管理和跟踪整个 QA 生命周期的方式。它是一个协作式并且可自定义的解决方案,可供团队用于创建和维护测试计划和测试设计,执行手动或自动测试,管理目标和计划,以及跟踪和报告有关测试阶段的健康状况。作为一个协作式生命周期管理 (CLM) 应用程序,Rational Quality Manager 连接了管理需求和缺陷报告的模块(分别为 IBM® Rational® Requirements Composer 和 IBM® Rational® Team Concert™,请参阅 “参考资料” 一节获取有关 CLM 更多信息的链接)。

Test Lab Manager 是 Rational Quality Manager 的一个嵌入式组件,它使测试团队能够将测试实验室资源(无论是虚拟的还是物理的)的管理集成到其组织的质量管理生命周期中。

图 1. Rational Quality Manager 测试周期管理
关键的测试管理操作

IBM® SmartCloud Provisioning 是一个高度可扩展、需要极少手动干预的基础设施即服务 (IaaS) 产品,通过提供对网络中的虚拟机和存储的按需访问来以服务的形式提供计算机基础设施。

本文介绍一个试点项目,它通过扩展 Test Lab Manager 功能来将 Rational Quality Manager 与 IBM SmartCloud Provisioning 相集成,进而通过虚拟机管理和测试执行来加速测试周期。


架构

Tivoli 罗马实验室已在广泛地采用基于 Rational Jazz 技术的协作式生命周期管理 (CLM) 方法,该方法在采用所涉及的各种应用程序(Rational Team Concert、Rational Requirements Composer 和 Rational Quality Manager)上具有不同的成熟度水平。在本文于 2012 年发布时,我们的实现处于版本 3.0.1.1。

图 2. Tivoli 罗马实验室中实现的 Rational Jazz CLM 架构
基于 Jazz 实现的关键组件

图 2 的大图

与此同时,受成本削减和效率改善的推动,我们投入大量精力增加开发和测试活动对虚拟环境的使用。开发人员和测试人员可使用 IBM SmartCloud Provisioning 1.2 系统按需请求一个虚拟环境。这使他们更高效和有效,主要得益于资源的更轻松的访问或更高的可用性,以及一个干净的环境所带来的信心。

借助 Rational Quality Manager 与 IBM SmartCloud Provisioning 的集成,罗马 Tivoli 实验室旨在进一步提高测试团队的效率,为他们提供对测试实验室资源的简易使用和虚拟化访问,以将实验室管理全面集成到测试定义和执行周期中。

图 3. 实现的扩展 Rational CLM 架构
罗马实验室 IT 的关键组成部分

图 3 的大图


初识 Rational Quality Manager 中的 Test Lab Manager

管理测试实验室资源是 Rational Quality Manager 为端到端测试管理所集成的功能之一。能够定义测试环境并将它们链接到测试案例,这为您提供了测试执行的完整可跟踪性,帮助您了解任何覆盖问题,还支持更高效地使用资源,因为您可以使用保留功能、按组组织它们等来跟踪和管理实验室资源。

第一步是确保 Rational Quality Manager 识别您的实验室资源。基本方式是手动创建实验室资源定义或从一个外部文件导入它们的定义。一种更高级的方法是使用 Rational Quality Manager 功能集成发现和配置工具。

Rational Quality Manager 可与 IBM® Tivoli® 软件,比如 Tivoli Service Request Manager、Tivoli Application Dependency Discovery Manager 和 Tivoli Provisioning Manager 一起部署,以提供请求执行、清单感知和自动化(参阅 参考资源 中的 “Rational Quality Manager 与 Tivoli” 了解更多细节)。此集成是通过适配器的方式所执行的,可通过使用 Rational Quality Manager Web UI 触发这些应用程序上的操作来调用这些触发器。


适配器概述

适配器是为扩展而实现 Rational Quality Manager 所提供的特定接口。可实现 3 种类型的适配器来扩展实验室管理功能:

清单
集成 Rational Quality Manager 与具有清单功能的外部应用程序。借助此集成,实验室管理器可更新实验室资源数据,以显示最新的实验室资源配置和新实验室资源。
 
自动化
集成 Rational Quality Manager 与具有自动化功能的外部应用程序。借助这些集成,实验室管理器可运行在远程实验室资源上外部应用程序中配置的脚本、项目或库。
 
虚拟化
集成 Rational Quality Manager 与管理虚拟映像和虚拟机的外部应用程序。
 

这些适配器都称为 Lab Manager 适配器,以便我们可将它们与另一种扩展测试脚本执行自动化的特殊适配器类型区分开来。


集成 SmartCloud Provisioning 虚拟化适配器

SmartCloud Provisioning 适配器的职责范围包括执行以下任务:

  • 实现一个虚拟化适配器来将 Rational Quality Manager 与一个虚拟化引擎 (IBM SmartCloud Provisioning) 相集成
  • 发现虚拟映像定义
  • 部署新虚拟机,从发现的虚拟映像开始
  • 发现虚拟机数据
  • 在虚拟机上运行自动化任务

后面的小节将通过一些步骤来介绍使用 Rational Quality Manager 3.0 中全面集成的适配器。

配置虚拟化适配器

安装之后,需要在 Integration_configuration.xml 文件(通常位于 RQM 安装路径 \server\conf\qm 目录)中添加一个特定的小节,以向 Rational Quality Manager 声明适配器。

新增的小节将 Rational Test Lab Manager 集成适配器的 SmartCloud Provisioning 定义为自动化适配器 (automationExtensionId) 和虚拟化适配器 (virtualizationExtensionId) 的实现。第一个接口允许 Rational Quality Manager 调用与 IBM SmartCloud Provisioning 的同步来将虚拟映像和虚拟机定义导入 Rational Quality Manager 数据库。第二个接口允许它在适配器发现或部署的资源上调用任务(自动化)。

在清单 1 中的代码的实例中,可以看到适配器的配置细节,您可以基于具体需求修改和更新它们:

projectArea
定义 Rational Quality Manager 中惟一有权与适配器交互的一个特定项目的链接
 
主机名和端口
定义 SmartCloud Provisioning CLI 服务器所在的主机和用于通信的端口
 
凭据小节
提供用于建立与 SmartCloud Provisioning 服务器通信的用户名和密码
 
选项小节
指定包含用于调用 SmartCloud Provisioning API 用户私钥的密钥库文件名
 

缩略语说明:

在代码、文件名或路径中:

  • RQM = Rational Quality Manager
  • RTLM = Rational Test Lab Manager
  • SCP = SmartCloud Provisioning
清单 1. 适配器配置
<adapter>
    <name>SCP RTLM Integration Adapter</name>
    <version>1.0</version>
	<APIVersionSupported>1.0</APIVersionSupported>   
    <automationExtensionId>
        com.ibm.tivoli.scp.rtlm.spi.automation.SCPAutomationSPI
    </automationExtensionId>       
    <virtualizationExtensionId>
        com.ibm.tivoli.scp.rtlm.spi.virtualization.SCPVirtualizationSPI
    </virtualizationExtensionId>   
    <pluginId>com.ibm.tivoli.scp.rtlm.spi</pluginId>
    <instance>
       	<instanceId>SCPAdapter</instanceId>
	<projectArea>my project</projectArea>
	<service>SCP.</service>
	<hostname>my server name</hostname>
        <port>5678</port>
	<credential>
        	<username>scpuser</username>
		<password>password</password>
        </credential>
        <options>
		<keyfile>scpuser_pkcs8.key</keyfile>
      	</options>
      </instance>
 </adapter>

使用虚拟化适配器

要完成虚拟化适配器的安装,您需要重新启动 Rational Quality Manager。

在 Rational Quality Manager 中安装和加载适配器之后,可以导入 SmartCloud Provisioning 服务器中定义的映像模板,然后将它们与已配备的虚拟机同步。接下来的步骤将解释如何实现。

同步 SmartCloud Provisioning 以导入映像模板

可以从 All Inventory History 面板与虚拟化适配器同步(参见图 4)。

  1. 在左侧导航面板中,单击 Lab Management 图标 Lab Management 图标,然后从下拉菜单选择 All Inventory History
图 4. 显示 All Inventory History
导航菜单的屏幕截图
  1. 单击 All Inventory History 面板右侧的 Synchronize 按钮(参见图 5),以开始从 SmartCloud Provisioning 导入虚拟映像和虚拟机的过程。
图 5. 开始导入虚拟实验室资源
Synchronize 按钮,All Inventory History 面板
  1. 同步结束时,您应该看到导入的映像和虚拟机的完整列表(参见图 6)。Rational Quality Manager 可将它们识别为新资源或更新资源。

备注:
本文未给出虚拟映像集合和虚拟机集合

图 6. 导入的虚拟实验室资源
该清单显示了映像和虚拟机的列表

图 6 的大图


如何将新虚拟机部署为实验室资源

从 SmartCloud Provisioning 导入虚拟映像定义后,您就可以操作它们了。您可执行的最基本操作是要求部署一个新虚拟机。

  1. 在左侧导航面板中,单击 Lab Management 图标 Lab Management 图标 并选择 View Lab Resources
图 7. View Lab Resources 选项
Rational Quality Manager 导航菜单
  1. View Lab Resources 面板中,打开 View Builder 编辑器。
  2. 通过选择 Virtual Image 类型来细化搜索(图 8),单击 Run 按钮开始搜索。
图 8. 细化搜索以仅列出虚拟映像
View Lab Resources 面板。View Builder 编辑器

如图 9 所示,Rational Quality Manager 中通过 SmartCloud Provisioning 适配器定义的所有虚拟映像都将列出。

图 9. 所有虚拟映像实验室资源的列表
View Lab Resources 窗格结果列表

图 9 的大图

  1. 选择您希望为一个新虚拟机部署的虚拟映像,单击应该在凭据右上角上激活的 Deploy 按钮 Deploy 图标(参见图 10)。

请注意,一般信息(比如映像类型和拥有它的工具)以及一些有关映像操作系统的更具体细节(比如操作系统级别和 OS 架构)已在 Rational Quality Manager 中发现并寄存。

图 10. 虚拟映像细节窗口
该屏幕截图显示了映像细节和 Deploy 图标

图 10 的大图

部署操作受 Rational Quality Manager 中 All Inventory History 面板中的 Deployment Operations 小节(图 11)监视。

图 11. 部署监视面板
部署操作跟踪

图 11 的大图

您可以检查 SmartCloud Provisioning 控制台来确认部署操作已执行。图 12 表明已配备了具有 RQMProject 后缀的新虚拟机 (VM)。

图 12. SmartCloud Provisioning 管理控制台
SmartCloud Provisioning GUI 显示了部署的 VM

图 12 的大图

  1. 回到 Rational Quality Manager 中,从 View Lab Resources 面板再次打开 View Builder 编辑器。
  2. 选择 Virtual Machines 类型来细化搜索,然后单击 Run 按钮开始搜索。

在列出的虚拟机中,您将找到刚部署的一个虚拟机。现在,您可以将这个新虚拟机添加到您需要链接到一个测试案例执行的任何测试单元中。

图 13. 查看所有虚拟机实验室资源
View Lab Resource 屏幕显示了新部署的 VM

图 13 的大图

使用自动化任务的更复杂部署

虚拟映像的部署通常需要您指定一些参数(例如在 SmartCloud Provisioning 中,您需要定义 VM 大小)。相反,您将会注意到,Rational Quality Manager 中内置的部署 操作没有提供任何功能来指定您将请求的虚拟机的任何特征。

SmartCloud Provisioning 适配器克服了这一限制,为此范围提供了任务(自动化)(您也可以添加其他任务,比如启动或停止部署的虚拟机或获取快照的操作)。您可以在 Rational Quality Manager 中轻松调用自动化任务:

  1. 从左侧导航面板,单击 Lab Management 图标 Lab Management 图标 并从下拉菜单选择 All Automations
图 14. Select the All Automations 视图
导航菜单,选择了 All Automations
  1. 在 Automations 一节中,您将看到适配器支持的所有可用的自动化(自动化任务)。在此示例中(图 15),仅包括 SmartCloud Provisioning 适配器公开的 DeployVirtualMachine 任务。
图 15. 列出可供适配器使用的所有自动互任务
All Automations 视图显示了可运行的任务

图 15 的大图

  1. Available Machines for Automation 一节将列出适配器所发现的能够为其运行自动化任务的所有可用资源(机器)。
图 16. 列出所有可运行自动化的机器
Available Machines for Automation 列表

图 16 的大图

  1. 从此示例,选择 SCP.DeployedVirtualMachine 自动化。

该面板将仅显示 SmartCloud Provisioning 适配器发现的所有资源,这就是被授权运行此任务的资源。

  1. 从可用映像中选择您希望部署的映像。
图 17. 指定部署哪个映像
可用的自动化和机器

图 17 的大图

  1. 单击 RunRun 图标 图标开始部署。
  2. 接下来,您将被提示在 Properties 弹出窗口中填入需要的参数。此窗口可依据适配器自定义,可提供默认值。在此示例中,可以指定要通知的电子邮件地址和 VM 大小。
图 18. 输入部署任务的参数
Properties 窗口

图 18 的大图

再一次,您可以查看 SmartCloud Provisioning 控制台来确认部署操作确实已执行。在图 19 中,请注意 SmartCloud Provisioning 将部署一个新虚拟机 (RQMProject_2121_03_21:04.13)。

图 19. 再次查看 SmartCloud Provisioning 管理控制台
SmartCloud Provisioning UI 显示新部署的 VM

图 19 的大图


将一个虚拟机用于 Rational Quality Manager

图 20 更清楚地展示了您刚创建的实验室资源。

图 20. 一个代表一个虚拟机的实验室资源的细节
虚拟实验室资源细节的屏幕截图

图 20 的大图

在这个适配器实现级别,实验室资源报告有关虚拟机的基本信息:IP 地址、主机名和操作系统。可在实验室资源定义中包含更多信息,比如内核架构和资源容量(CPU、RAM 和磁盘)。

作为一个示例,假设您计划在一个 Linux 机器上对您的测试系统 (SUT) 运行一个构建验证测试。您将在 Rational Quality Manager 中为您的测试定义一个测试环境。测试环境是一组特定机器的一组实验室资源属性,比如操作系统和软件。它描述您将在其中运行测试的环境。对于此场景,您的测试环境将类似于图 21。

图 21. 测试环境定义
测试环境定义的屏幕截图

图 21 的大图

此测试环境仅包含一个实验室资源,惟一的规范是操作系统为 Red Hat Linux。

  1. 现在您需要实例化一个测试单元。测试单元是一组实验室资源,比如物理和虚拟机,它们具有与一个特定测试环境的需求相匹配的硬件和软件配置。团队或个人测试人员可保留该单元以运行测试。
图 22. 向一个测试单元分配一个实验室资源(第 1 步)
测试单元定义的屏幕截图

图 22 的大图

  1. 现在您需要向测试单元分配一个真正的资源。单击 Assign Lab ResourceAssign Lab Resource 图标 图标,Rational Quality Manager 将在它可识别的资源中查找具有所需特征的资源。

如图 23 所示,它挑选了刚刚部署的虚拟机。

图 23. 向一个测试单元分配一个实验室资源(第 2 步)
在屏幕截图中,资源名称已被圈上

图 23 的大图

  1. 现在,作为最后一个示例,看看代表刚部署的一个虚拟机的实验室资源。请注意,该实验室资源包含有关 VM 的最重要的信息:IP 地址和操作系统。

结束语

如上所述,SCP 适配器已被部署为一个试点项目的一部分,并且此项工作仍在继续中。并不是所有 IBM SmartCloud Provisioning 功能都已在此适配器中使用,仍然存在着一些限制(比如,用于服务器连接的用户访问 ID 和私钥的管理,或者该适配器在多个项目中的使用)。但是,我们从测试团队获得了有关此集成的效率方面的积极反馈。此反馈激励着我们继续朝这一方向投资。

参考资料

学习

获得产品和技术

讨论

条评论

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, Tivoli
ArticleID=835705
ArticleTitle=扩展 Rational Quality Manager 来管理云中的实验室资产
publish-date=09172012