如何在测试管理中应用 IBM Rational ClearQuest

作者&投稿:谯吕 (若有异议请与网页底部的电邮联系)
如何在测试管理中应用 IBM Rational ClearQuest~

你是想用cq做defect流程?
如果是的话,cq与cc的集成很适合做defect,而且defect在工具里面有样例。
就看你想做成什么样了

ClearCase 新功能 -- 给互联网行业的用户带来提高开发整体工作效率的机会互联网行业的 ClearCase 流对其他软件研发相关工作的支持如果没有 ClearCase,会怎样?不得不说的 ClearCase 缺点总结参考资料 IBM Rational 的 Rational ClearCase 是软件配置领域的先导,它提供了全面的配置管理──包括版本控制、工作空间管理、建立管理和过程控制。本文结合其他领域的一些知识,对 Rational ClearCase 做了一个分析,并尝试回答问题:为什么要用 Rational ClearCase? Rational ClearCase 介绍IBM Rational 的 Rational ClearCase 是软件配置领域的先导,它主要基于 Windows 和 UNIX 的开发环境,并提供了全面的配置管理──包括版本控制、工作空间管理、建立管理和过程控制。随着软件团队人员的增加,软件版本不断变化,时间的紧缺,多种平台的复杂环境,使得 Rational ClearCase 所拥有的特殊组件已成为当今软件开发人员(工程人员和管理者)所需要的基础工具之一。 Rational ClearCase 的特点Rational ClearCase(以下简称 ClearCase)是业界非常优秀的软件版本控制工具和软件资源配置管理工具,在软件开发过程中,采用 ClearCase 进行版本控制能够实现真正意义的并行开发,提高开发效率。同时 ClearCase 作为商业软件,拥有不断进度,满足开发人员各种需求的动力;但也拥有大型商业软件的弊端,对需求或者缺陷的响应速度慢;以及常被用户抱怨的复杂!其他配置管理工具,目前最流行的,是 Subversion,这个工具是一个开源的产品,是为了降低公司成本,同时满足开发人员想利用更少的过程,约束以及控制,而采用简化的配置管理解决方案。Subversion 的优点在于简单,方便;但 SVN 也有一些不足之处,因为 Subversion 只是版本管理工具,对于配置管理的支持比较缺乏,例如完善的版本树,便捷的项目级代码管理,代码集成的支持等。UCM 太好了,所以选择 ClearCase!统一变更管理(Unified Change Management, UCM)是第三代的配置管理解决方案,是用于管理软件开发从需求获取到版本发布整个过程中所有变更的“最佳实践”流程。UCM 定义了一个可以立即用于软件开发项目的基于活动的代码变更管理模式。UCM 模式中最有名的就是 ClearCase 和 ClearQuest 的集成,ClearQuest 中的变更请求(Change Request)关联到 ClearCase 中的某个 Activity 上,然后开发人员修改代码时,必须选择本次修改和哪一个 Activity 做关联,这样变更请求 -> Activity -> 代码,就有了清晰的关联。图1. UCM 示意图 在互联网行业,对于“速度”有着疯狂的崇拜,因此在变更的响应时间上要求快!快!再快一点!文档,记录似乎变得都不太重要了,满足用户需求是第一位的,产品质量不可降低,这就造成信息还是必须的,这个时候,UCM 模式带来的好处就凸显:代码变更可审计,简化故障分析的复杂度,为缺陷预防提供详细的信息,提高回归测试分析的有效性,于是文档似乎不重要了……如果多的好处,谁不想要呢?而 ClearQuest 工具在流程管理上的强大,让用户不得不选择 ClearCase 作为配置管理工具;同时简化文档的作用,而把注意力专注到完成项目,完成用户上,也是目前流行的“敏捷”理论所推崇的。ClearCase 新功能 -- 给互联网行业的用户带来提高开发整体工作效率的机会如果单独作为一个文件版本管理工具,和其他工具,例如 SVN 做比较的话,ClearCase 没有任何的优势。但 ClearCase 作为商业工具,它有着令人心动的未来:跟随客户需求,不断的在变化ClearCase 新版本 CCRC 的出现,让很多使用 Java 为主要开发语言的互联网用户来说,有了更多的选择:作为一个新的 ClearCase 客户端,和开发相关的代码配置管理工作都可以完成;免除了庞大的工具安装,只需要在 Eclipse 中安装一个插件即可;同时插件模式的使用,使得 Java 开发可以和配置管理工作无缝的集成。新功能的开发,让开源工具无法跟上其脚步CCRC7.1 中,提供了对 Code Review 的支持,通过一个简单的“通过选择器显示更改集”,就可以把 UCM 模式下,任何一个 Activity 所修改的代码查询出来,可以方便的做查看,以及版本比较。这种方式下,可以对任何一个任务修改的代码进行 Review,甚至不是自己所参加的 UCM Project 都可以。例如开发人员 A 需要 Review 另一个开发 B 在某一个任务上修改的代码,他只需要知道开发 B 的任务 ID 即可:打开变更集视图 图2. 变更集视图(查看图 2 大图)输入开发 B 的任务 ID 图3. 选择器选择需要检查的代码进行代码审查(Code Review) 图4. 代码审查(查看图 4 大图)当大家还在抱怨 Code Review 不好做,不知道这部分代码是和那个需求关联时,这个方案会让 Code Review 变得异常的简单。开发的效率不仅仅是快速的修改代码 从开发人员视角来看,似乎效率就是如何更快的修改代码,但从整个研发模式来看,快速的集成,快速的编译,快速的测试,这些都是效率提升的体现。ClearCase 在这些方面,结合其他工具,很容易实现相关功能。而其他一般的把版本管理工具,是无法在这些方面有所突破的,除非整个工具支持二次开发。互联网行业的 ClearCase 流很多人在接触到 ClearCase 的时候,无不为 "Stream" 这个词伤透脑筋,它和分支有和何不同?它有什么好处?但随之使用的深入,你会发现,无论你的研发模式如何调整,它总是能适应你的各种应用。举例来说:在互联网行业,一般都有两种不同类型的项目,项目 A 是一个由很多小的需求组成的项目,设计后发现,在代码上分析彼此没有任何冲突,另一个项目 B 则是一个庞大的项目,需求错综复杂,完成设计后,代码关系如同蜘蛛网一样复杂,同一个文件会被多个需求所修改,甚至有类会被重构。这两种项目,从研发流程来说,应该选择不同的流程,项目 A 需要简单,快速,不需要很严格的评审,以及变更管理,项目 B 需要严格的评审控制,变更控制,避免项目失控。从配置管理策略来说,也应该是适用不同的策略,项目 A 可以把项目中的开发活动统统隔离开,项目的各个任务之间不受影响,用最快的速度完成各自的开发,各自的测试,代码集成后也不会有太多冲突,和集成的问题,因此可以采用集成流 + 开发流的模式;而项目 B 需要尽能的集中,尽早发现不一致,把集成的问题第一时间发现,第一时间解决,避免在项目后期陷入痛苦的集成工作,因此需要每天做集成和编译,甚至每天做自动测试,回归测试,因此可以采用复用集成流的模式,所有开发都复用一个项目流,代码的改动随时会被发现,被解决。 虽然单流模式可能会让项目很“痛苦”,但和集成的痛苦相比,可能是打针和做外科手术的区别。从对持续集成不太深入的了解分析,持续集成就是要让变化尽早的被发现,被解决,而复用流模式,则是持续集成的最极端的场景之一:变化随时被项目组的其他人员感知,冲突随时被解决,否则开发是无法进行下去的,如果加上自动化的集成,自动化的测试,这就是一个典型的项目内部持续集成应用。这两种模式也有各自的优缺点:单流模式优缺点:优点: 代码修改联系紧密,任何变动,随时被项目组所有开发人员获取 开发人员只需要 check in 代码即可,无需二次提交 缺点: 流的代码质量不可控,随时处于变更状态 对流做 Rebase 或者添加子系统,开发的工作同时受到影响,无法工作,时间随 rebase 以及同步的时间长度而定; 多流模式优缺点:优点: 隔离开发空间,各自工作不相互影响 对集成流做 Rebase 或者添加子系统后,开发人员的工作不受影响 集成流的质量得到保证,对持续集成 / 编译 / 测试有帮助 缺点: 开发人员需要对流模式有了解 开发人员需要把代码从开发流二次提交(Delivery)到集成流 需要有人对集成流进行管理 在不同的情况,应该根据自己的实际情况选择适合自己的模式,汇总来说,单流和多流模式适合的使用场景如下:单流模式: 开发人员工作比较分散,对相互的工作几乎没有影响 强调开发速度,对过程中的代码质量不做要求 多流模式: 开发人员工作相互干扰大 项目经常受其他项目影响,需要随时做 Rebase 过程中的代码质量受到控制,并对集成流做持续集成 / 编译 / 测试 / 部署 当然流模式的好处,对于互联网行业不仅仅在开发流和集成流的区别,还有 Rebase,基线,以及对于产品模式和项目模式的同时支持等等。总的来说,“Stream”就是一个大草原,你可以按照自己的目标和具体需求,规划自己的道路。 对其他软件研发相关工作的支持郭士纳在《谁说大象可以跳舞?》中描述 IBM 和其他公司的不同之处,就是在于提供完整的解决方案,而不仅仅是某个环节的最佳实践。因此我们可以看 IBM Rational 在软件公司的全套应用:需求管理,架构分析,开发设计,缺陷管理,持续集成,自动化测试,甚至是性能测试,代码走查……当ClearCase 和相关工具结合起来,你会看到一个完整的研发工具平台,可以满足任何研发环节的应用。虽然这些工具都是商用工具,有的还比较复杂,但随着时间的发展,相信 IBM Rational 会逐步整合出一个简单有效,统一的研发平台,再配合成熟的,有技能的人员,加上完善的流程规范:稳定,而且平衡的质量三角形就会呈现在你的面前。图5. 质量三角形例如目前公司在试点敏捷方法,其中对于持续集成有工具上的要求,我们采用开源的持续集成工具 CruiseControl 管理持续集成的策略,但我们的代码还是保留在 ClearCase 的 Stream 中。CruiseControl 可以自动的获取 ClearCase 的代码变更,然后执行编译,测试,部署等等活动。如果没有 ClearCase,会怎样?配置管理工具是任何软件公司都必须的,只是需求不同,造成功能不同而已。因此没有了 ClearCase,你也需要选择另一个配置管理工具,例如 SVN,或者自己开发一个的配置管理工具。 但有两个问题需要在决策前考虑:工具的开发是否是你的主业?你做的会比商业工具更好吗?只是如果选择了商业工具,那么商业工具应对变化缓慢的问题,在这个速度至上的时代,的确是需要工具厂商认真对待的!不得不说的 ClearCase 缺点 感觉很复杂,需要轻量级的应用,提高用户易用性不知道是否是因为出身名门的缘故,IBM 产品给人的印象就是庞大,复杂。在 ClearCase 这个产品中,虽然有很多很多好的功能,但对于不同的人来说,也许甲只用两个功能,乙用另外三个功能,但两人都需要把 ClearCase 安装完整,同时在使用的时候,由于功能的庞杂,难免造成用户抱怨:我需要的功能很简单,但为什么工具要规定我必须要这么做,太复杂了!如果ClearCase 能针对不同的人,提供不同的版本,或者说针对 Eclipse 的不同插件,例如普通开发,就是版本管理;技术负责人,需要 code review,编译集成等工能插件;集成人员需要提交,Rebase 等功能插件……这样可以针对不同人员的需求,提供轻量级的功能应用,同时易用性又可以更加贴近不同的用户,做的更好,这样的产品是否会有更多人喜欢?针对不同的行业,没有变化互联网是一个全世界都在关注的领域,但从 IBM Rational 的产品来看,似乎没有完全跟上这样一个步伐。举一个简单的例子,我们是使用 Eclipse Java EE 的版本,在 Eclipse 中有一个重构(Refactor)功能,当我们在使用这个功能出现问题时,ClearCase 的开发人员和技术支持人员,似乎都不了解这个功能,这样就无法给用户提供及时的解决方案,用户的抱怨就多了,满意度自然就降低了。应对问题的处理速度慢 当你面对一个选择:一个功能弱小,满足当前需求,但不会出问题的系统,和一个功能强大,满足未来五年需求,但经常有各式各样,大大小小问题出现的系统,决策者会选择哪个呢? 一些看的长远的公司应该会选择后者,但这样的选择是有前提条件的:出现问题没关系,但解决问题的速度要快!就如同当下流行的一个比喻:在汽车飞驰的状态下,如果轮胎出现了问题,要在不减速的情况下,更换轮胎,只有这样才能保持对竞争对手的压力,保证自己的市场份额。从ClearCase 在公司的实际使用来看,我们选择了后一个方案,但出现问题后,解决的速度令人不满意。开发人员都知道,作为一个配置管理工具,如果出现一个重大问题,也许是工具问题,也许是方案问题,也许是执行问题,就会意味开发人员无法正常工作,甚至造成代码出现问题。作为向服务转型的公司代表,IBM 应该在这个方面做出表率:无论问题是由什么原因造成的,IBM 应该协助用户去分析问题,解决问题,只有这样,才能赢得用户的信任,才能和用户一同成长。总结ClearCase 无数配置管理中的一种,它有着令人着迷的功能,也拥有很多让开发人员抱怨的弊端,作为配置管理员,或者管理研发工具的人员,这些都需要了解,然后根据自己公司的实际状况,以及暴露出来的问题综合考虑,选择真正适合自己的工具。 无论选择那种配置管理工具,在工具切换时一定要做好充足的,甚至过分的准备,包括实施前的介绍沟通,实施中的培训,实施后的技术支持,这样才能得到良好的回报。参考资料 学习“ 统一变更管理的力量 ”(developerWorks,2004 年 12 月):本文阐述了统一变更管理(UCM),一个由Rational结合我们的用户开发的特殊的变更管理过程。 “第三代配置管理解决方案:统一变更管理(UCM)”(developerWorks,2004 年 8 月):二十多年来 ,Rational软件一直致力于提供全面可靠的软件开发管理解决方案,其中软件配置管理(software configuration management,SCM)解决方案集成了两个业界领先的工具:用于软件工件管理(software artifact management,SAM)的Rational ClearCase和用于缺陷及变更跟踪的Rational ClearQuest。这两个工具合在一起构成了一个市场领先的软件配置管理系统,提供了真正用于加速软件开发周期和流程的解决方案,这一方案已连续四年居市场第一位。“UCM ClearCase 与 ClearQuest的集成”(developerWorks,2006 年 2 月):ClearCase 是业界非常优秀的软件版本控制工具和软件资源配置管理工具,目前在软件开发项目中应用较为广泛;ClearQuest则是软件变更管理和缺陷跟踪工具。在实际的软件产品开发过程中,两者的结合使用,会极大地提高开发效率,保证产品质量。本文详细介绍了ClearCase与ClearQuest的两种集成方式之一:UCM ClearCase与ClearQuest的集成。“Rational 多媒体课堂:软件配置管理最佳实践经验 —— 统一变更管理”(developerWorks,2008 年 7 月):本讲座简要介绍 Rational 软件配置管理最佳实践经验 —— 统一变更管理 (Unified Change Management, UCM),以及使用 Rational ClearCase 与 Rational ClearQuest 进行软件配置管理方面的内容。“Rational统一变更流程UCM”(developerWorks,2003 年 12 月):软件变更贯穿于整个软件开发过程,如需求变化、软件缺陷等,如何有序地管理这些变更是项目管理中的一大课题。随着软件规模的日异庞大,开发团队的规模也在不断增大,有效管理团队开发的协作,支持并行开发,支持多个项目之间的代码共享,是提高开发效率和软件质量的一个重要途径。针对这些问题,Rational提供了统一变更管理(Unified Change Management)流程来管理软件的开发进程,帮助项目管理人员更好地管理项目的进展。我们也将展示UCM的工具平台--Rational ClearCase和ClearQuest的应用。“IBM Rational如何使用ClearCase UCM来开发产品”(developerWorks,2006 年 12 月):本讲座介绍了IBM Rational 使用ClearCase UCM 在IBM全球进行配置管理和统一变更管理,开发产品的成功案例。本讲座涉及ClearCase/UCM,CCRC,ClearQuest/ClearQuest Web,MultiSite等多种业界领先解决方案,涵盖从建立产品开发环境,研发,构建, 补丁以及发布整个工作流程,集中体现了最佳实践经验和分布式系统的维护经验。“Rational 多媒体课堂:Rational 统一变更管理(UCM)解决方案案例分析”(developerWorks,2008 年 12 月):本讲座将为您介绍 Rational 统一变更管理解决方案的基本概念和方法,并通过一个实际的 IBM Rational ClearCase 部署案例分享 Rational 统一变更管理(UCM)解决方案案例经验。访问developerWorks 中国网站的 Jazz 技术空间,这里汇集了丰富的 Jazz 平台中文技术资源。 您可以通过这里了解更多关于 Jazz 平台和 Jazz 技术发展趋势的最新信息。访问IBM developerWorks 中国网站 Rational 专区,获得关于 IBM Rational 软件交付平台(Rational Software Delivery Platform)产品的技术资源和最佳实践。阅读 Rational Edge 中文版,获取软件开发领域的最佳实践。订阅 IBM developerWorks 时事通讯,一份关于 developerWorks 指南、文章、下载、社区活动、网络广播和技术讲座的电子周刊。学习 Hello World 系列教程,这是学习 IBM 软件工具的快速通道。在每一篇教程中,都会有快速入门产品演示动画。您可以通过其中的动画演示快速浏览如何使用 IBM 软件完成开发任务。获得产品和技术访问 Rational ClearCase 产品专题,了解最新的 IBM Rational ClearCase 产品文档和产品信息,可以查阅产品概览、产品手册、产品技术支持、试用版下载,以及相关文章、教程、多媒体课堂和产品演示等信息。立即试用 IBM Rational ClearCase 试用版。下载更多免费的 IBM Rational 试用版软件,了解 IBM Rational 软件的最新特性。获取更多 IBM 试用版软件,并熟练掌握来自 DB2??、Lotus??、Tivoli??,以及 WebSphere?? 的开发工具和中间件产品,用这些试用版软件开发您的下一个项目。这些试用版软件可以免费直接从 developerWorks 下载。

本文将结合“计划阶段”、“管理阶段”和“执行阶段”这三个阶段向大家解释 ClearQuest TestManager 的各种角色,各种记录以及 ClearQuest TestManager 在测试管理中的基本应用,和 ClearQuest TestManager 同 Rational 其他产品的集成带来的测试管理的改进。
1. 综述
Rational ClearQuest TestManager(简称 CQTM)是 IBM Rational ClearQuest 产品(简称 CQ)中的一个特性,属于集成到 IBM Rational ClearQuest 中的一个应用包。它继承了作为对立产品的 Rational TestManager 的测试管理的特性,同时更有效的结合 ClearQuest 的特性,为测试管理提供了更佳的解决方案。 CQTM 定义了测试管理中的测试资产,其中包括:测试计划、测试用例、测试需求、测试配置环境、测试脚本和测试结果等。在这些文件夹、文件和数据之间的层次关系是用 ClearQuest 数据库中的记录来表示的。数据库中的记录是按照 CQTM 定义的层次结构来组织的。
在层次结构的贯彻执行中包括三个阶段:计划阶段,在该阶段,首先创建资产注册表,再创建测试计划、测试用例、配置的测试用例等记录类型,用以形成测试层次结构;管理阶段,在该阶段创建测试脚本,并与测试用例和配置的测试用例相关联,进行对整个测试的管理,尤其是对测试脚本,测试结果;执行阶段执行配置的测试用例或测试套件,评审测试结果,结果如果适当则提交到 CQ 数据库中形成测试日志或者测试套件日志,完成对测试的执行并配合记录结果从而进行结果分析。
本文将结合这三个阶段向大家解释 CQTM 的各种角色,各种记录以及 CQTM 在测试管理中的基本应用和 CQTM 同 Rational 其他产品的集成带来的测试管理的改进。
2. CQTM 的安装
2.1 使用 Enterprise Schema
CQTM 软件包已经集成在 Enterprise 模式中,属于开箱即用的模式,用户只要创建属于 Enterprise 模式的数据库,即可获得 CQTM 的特性。
2.2 应用 CQTM 软件包
在没有集成 CQTM 的模式里,可以应用 CQTM 软件包来获取 CQTM 的特性。登录 ClearQuest Designer,检出模式,该模式应该是非 Enterprise 的 OOTB 模式。点击 CQ Designer 中的菜单,软件包/软件升级,选中 CQTM 的软件包,如图 1 所示。并点击完成。
检入模式,然后升级用户数据库。则对 CQTM 的软件包的应用已经完成。用户可以在使用该模式的时候,获得 CQTM 的特性。

图 1: 升级软件包
3. CQTM术语
3.1 记录类型解释
CQTM 的将各种测试资产用 CQ 的记录类型进行表示,存储在 CQ 的用户数据库中。在随后的介绍中,我们将使用 CQTM 记录类型的英文名字进行介绍。

CQTM 记录类型
解释

TMAssetRegistry
资产注册表是无状态记录,用作测试计划、测试用例、配置的测试用例、测试套件、文件位置和迭代记录关联文件的所有位置信息的容器。

TMIteration
迭代是包含迭代信息的无状态记录。迭代记录代表开发正在接受测试的系统期间的特定里程碑。

TMTestPlan
测试计划是主要的有状态记录,表示预计要执行的测试的主要分组。它可包含对关联的子测试用例记录的引用,或对进一步指定相关测试区域的其他测试计划的引用。测试计划记录提供项目中其他测试资产的组织结构。

TMTestCase
测试用例记录代表需要在受测试系统中进行验证的行为单元。
注:如果对模式应用 Rational RequisitePro 集成 V1.8 软件包,并且测试用例是选定的记录类型,则测试用例记录也将包含需求页面。
测试用例记录始终保持至少与一个测试计划记录相关。

TMConfigurationAttribute
配置属性是无状态记录,它可以定义由任何配置记录使用的属性

TMConfigurationValue
配置值是无状态记录,定义由配置属性使用的值。配置值记录与配置属性记录相关联。

TMConfiguration
配置是无状态记录,定义受测试的系统配置。配置记录与配置的测试用例及测试套件记录相关联。

TMConfiguredTestCase
配置的测试用例是有状态记录。已配置的测试用例记录是具有关联配置和迭代记录的测试用例的可执行格式。每个已配置的测试用例记录都与父测试用例记录相关联。单个测试用例记录可与多个已配置的测试用例记录关联,其中每个已配置的测试用例记录都将用于测试不同的配置。

TMTestLog

测试日志是无状态记录,显示执行的已配置测试用例记录的摘要结果。

TMTestSuite

测试套件是有状态记录,表示可按顺序执行的已配置测试用例记录的有序列表。

TMSuiteLog

套件日志是无状态记录,表示在关联测试套件中所有执行的已配置测试用例记录的摘要结果。

3.2 各个记录类型的关系
上节所介绍的各种 CQTM 的记录类型,它们之间有着一定的架构关系,图 2 介绍的是 CQTM 中 TMAssetRegistry,TMIteration,TMTestPlan 以及 TMTestCase 记录类型之间的可能的一种架构关系。Product 1 相关的测试资产“Asset Registry for Product 1”对应 CQTM 中的 TMAssetRegistry 记录。而对 Product 1 进行的测试会分为几个迭代,包括 Iteration 1,Iteration 2 和Iteration 3,在 CQTM 中以 TMIteration 记录来表示。所有的测试计划和测试用例都会存在于指定的 Product 1 的测试资产中,分别用 TMTestPlan 和 TMTestCase 记录类型来存储。而且不同的测试计划和测试用例也可以单独关联不同的迭代记录。如图上 Test Plan 1 与 Iteration 1 关联,Test Case 2 和 Test Case 3 则与 Iteration 3 关联。
图 3 介绍的是 TMTestPlan,TMTestCase,TMConfiguration 和 TMConfiguredTestCase 记录类型之间的架构关系。由图所述,已经定义了 Configuration 1 和 Configuration 2 等四个配置,在 CQTM 中以相应的 TMConfiguration 记录来标示。可以将一个 TMTestCase 记录与这些 TMConfiguration 记录进行绑定,从而形成一个可配置的测试用例,也即是 TMConfiguredTestCase 记录。一个 TMTestCase 记录可以与多个 TMConfiguration 记录关联而形成不同的 TMConfiguredTestCase 记录。当然这些 TMConfiguredTestCase 也与 TMTestPlan 和 TMTestCase 一样,存储在测试资产注册表中。
图 4 介绍的是 TMConfiguration,TMConfigurationAttribute 和 TMConfigurationValue 的关系。TMConfiguration 类型的记录创建需要两个元素,包括配置属性和配置值,这两个元素在 CQTM 中分别以 TMConfigurationAttribute 和 TMConfigurationValue 两种记录来标示。通过这些可重用的 TMConfigurationAttribute 和 TMConfigurationValue 记录,就可以很容易地指定一个 TMConfiguration 记录的细节信息。
4. 基本测试管理应用 CQTM
4.1 CQTM 所涉及的角色
CQTM 的使用涉及到以下的用户角色。
模式开发者:模式开发者把 CQTM 应用包,应用到一个已存在的 CQ 模式中,也可以自定义 CQTM 的记录类型在实际中所需要的其他各种字段,为实际测试环境进行在 CQ 以及 CQTM 中定制相应的设计。
项目组长:模式开发者会指定某个产品发布所涉及的测试 Build 和迭代阶段。
测试组长:测试组长的职责定义测试工作的范围,创建定义测试计划所需的测试资产。测试组长还创建各个测试计划来覆盖所测产品特性,以及包含测试脚本和测试激发因素文档的文件地址。在执行已配置的测试用例或者测试套件后,测试组长可以分析测试结果、对应需求的测试覆盖率及与测试用例相关的缺陷。测试组长通过查询、报告和图表来评估测试覆盖率、测试者的工作量以及测试总体进程。
测试者:测试者创建测试用例、配置环境、已配置的测试用例和测试套件等记录。测试者还可以使用受支持的 Rational 测试工具来为每一个测试用例开发测试脚本。测试者还会执行已配置的测试用例和测试套件,审查测试结果,并提交测试结果到 CQ 数据库中。
ClearQuest 管理者:如果测试项目以前使用 Rational TestManager 来管理测试资产,ClearQueat 管理者可以使用 CQTM 提供的迁移工具来迁移数据,ClearQueat 管理者必须安装IBM Rational ClearQuest 7。0版本,包括 ClearQuest 客户端或包含 Test Management 插件的 ClearQuest Eclipse 客户端。
4.2 角色分工
测试开始之前的准备工作,由模式开发者来进行。根据测试的需求,模式开发者设计在测试管理中的所需要的 CQ 记录类型、记录类型的各个字段定义以及记录操作的表单。而 CQ 管理者需要对 CQ 所使用数据库进行管理,包括数据的备份,使用的软件的升级等等, CQ 管理者的工作将在测试的各个过程中持续,直到测试结束。模式开发者和 CQ 管理者对整个测试过程的作用在于前期的准备和测试过程中的维护。
在实际测试进行中,项目组长需要指定测试产品的开发的迭代阶段以及测试需要使用 Build。而测试组长则需要创建 TMAssetRegistry,TMTestPlan 和 TMTestCase 记录,从而可以使测试者可以根据这些记录进行测试。测试者则创建 TMConfiguratedTestCase 和 TMTestSuite 记录,在测试后提交测试结果。测试组长在测试完成后根据测试结果生成报告和图表,从而完成测试工作。在随后的介绍中,将具体介绍在测试的过程中,不同角色发挥的作用,即基本的测试管理的应用。
4.3 CQTM 在测试管理的生命周期中的具体应用
在测试的过程中,主要参与的角色包括项目组长,测试组长和测试者,我们将主要讨论这三个角色在测试过程中如何利用 CQTM 进行测试管理,从而完成整个测试管理的生命周期。本章节将讨论的是基本的应用,所有图例都是在 IBM ClearQuest Eclipse 简体中文版客户端中截取。关于与其他产品的集成所产生的高级应用,将在随后的章节详细介绍。
首先,项目组长需要对整个项目进行分析与估计,制定并且设计好测试的整体资产。项目组长需要创建测试中的资产注册表,将所有的测试资源指定在该资产注册表下,同时需要指定测试的迭代过程,从而为整个测试的进度做规划。其中对 TMAssetRegistry 和 TMIteration 的创建,可以通过正常的向导生成,
其次,测试组长的工作主要集中在具体的测试计划,测试用例方面,完整的搭建一套测试体系架构,因此测试组长需要创建 TMTestPlan,TMTestCase,TMConfiguration,TMConfigurationAttribute 和 TMConfigurationValue 记录,从而规划测试者的测试,图 7 是由 ClearQuest RCP(Rich Client Platform)客户端中“TestManager – 规划”视图看到的各种类型的记录的层次关系,是对 CQTM 中所有的记录类型之间关系的总结。
TMTestPlan,TMTestCase,TMConfiguration,TMConfigurationAttribute 和 TMConfigurationValue 记录的创建,可以根据向导进行,与图 6 的创建过程相仿。也可以在“TestManager – 规划”视图中相应的记录使用右键点击弹出菜单中进行快速创建。需要注意的方面是创建的顺序,如 TMTestCase 记录的创建必须在 TMTestPlan 记录之后,各种记录创建顺序如下表所示。

产生顺序

测试计划/测试用例
配置

TMTestPlan
TMConfigurationAttribute

TMTestCase
TMConfigurationValue

TMConfiguration
测试者需要根据测试组长已经创建的 TMTestPlan,TMTestCase,TMConfiguration,TMConfigurationAttribute 和 TMConfigurationValue 的记录,创建 TMConfiguratedTestCase 和 TMTestSuite 记录,然后在完成测试后提交测试结果。TMConfiguratedTestCase 记录的创建前提是存在相应的 TMTestCase 和 TMConfiguration 记录。图 8 中就是根据 TMTestCase 记录来添加已配置的测试记录。然后在图 9 中选择相应的配置记录从而形成 TMConfiguratedTestCase 记录。
如果测试者并不使用其他 Rational 测试工具: Rational Functional Tester, Rational Manual Tester 以及 Rational Performance Tester 编写测试脚本,并将 TMTestCase 或 TMConfiguratedTestCase 与测试脚本绑定,而只是进行手工测试。则需要测试者自行创建测试日志也即 TMTestLog 记录,从而在 CQTM 中记录测试结果。如果测试者使用其他 Rational 测试工具,则在测试工具执行脚本后,由测试工具自动产生测试日志。图 10 演示了如何通过 TMConfiguratedTestCase 记录创建 TMTestLog 记录。图 11 演示了创建 TMTestLog 记录所需要填写的内容。
对于测试者,如果当前的 TMConfiguratedTestCase 记录的测试结果是失败的,则需要使用到 ClearQuest 的缺陷管理的功能,完成提交缺陷的功能。这一提交的功能需要手工的操作,无论 TMConfiguratedTestCase 记录是否与其他 Rational 的测试工具的脚本绑定,对缺陷的提交和添加都如图 12 所示。
测试组长在测试者进行测试之后根据结果生成报告和图表提交给项目组长,从而完成测试工作。如图 13 所示,CQTM 提供了很多缺省的报告图表,方便了总结测试工作。
5. 集成自动化测试工具 - Rational Functional Tester;Rational Performance Tester;Rational Mannual Tester
5.1 与 Rational 测试工具集成的优势
前文介绍的是如何使用 CQTM 来管理测试过程中所涉及的测试资产,在自动化测试工具应用越来越广泛的今天, CQTM 也提供了与自动化测试工具的无缝集成。Rational Functional Tester(RFT)是一款先进的、完全面向对象的和跨平台的基于图形化用户界面的自动化测试和回归测试工具,其支持 Java 和 VB.Net 编程语言,支持 Windows 和 Linux 平台,并且为 Java 和 Web 测试人员提供了和开发人员同样的基于 Eclipse 的集成操作平台;Rational Performance Tester(RPT) 是一款强大的基于 http 或 SAP 的图形化自动性能测试工具;Rational Manual Tester(RMT)为用户提供强大的手工测试脚本编写和执行功能。CQTM 也提供了与这三种广泛应用的测试工具的无缝集成,将测试工具完美集成到 IBM Rational 整个测试生命周期中,真正实现测试自动化和过程管理的统一平台,极大地提高整个软件开发团队的能力。集成使我们可以在完全统一的平台中进行测试用例记录的编写,以及测试脚本的开发、管理和执行,还可以很方便地从测试用例定位到相应的测试脚本以及运行,然后产生脚本的测试日志,最后对测试日志进行分析并提交缺陷。
5.2 集成的功能
CQTM 为测试工具的集成提供了 TMTestCase 记录和 TMConfiguratedTestCase 记录与实际的测试脚本相关联的功能。当 TMTestCase 记录与脚本关联后,由 TMTestCase 记录所配置得到的 TMConfiguratedTestCase 记录会自动关联上其所关联的脚本,当然我们也可以对从 TMConfiguratedTestCase 记录单独关联测试脚本。
CQTM 还为测试工具的集成提供在统一的平台中定位和执行 TMConfiguratedTestCase 记录所关联测试脚本的能力,并且可以对测试脚本执行所产生的测试日志进行分析和处理。
其集成功能可以分成三个部分:测试脚本与 TMTestCase 记录和 TMConfiguratedTestCase 记录的关联;通过 TMConfiguratedTestCase 记录来执行测试脚本;测试脚本执行结果的处理。这三个部分根据 CQ 的客户端软件的不同在使用方法上有所不同。
CQTM 可以单独以 RCP 客户端方式启动,但是为了得到与测试工具的集成能力,我们建议将 CQTM 以插件的方式安装在测试工具中。这样所有的操作就可以统一的 IDE 中进行。如果需要将以上所说的三个测试工具和 CQTM 一起进行集成,我们需要将 RFT,RMT 和 RPT 安装到统一的 IBM Rational 软件开发平台(RSDP)中,而 CQTM 以插件的方式安装在 RSDP 中。以下的介绍也将基于这个平台来进行。
5.2.1 测试脚本与测试用例记录的关联
在 CQTM 中,在测试用例记录和测试脚本相关联前,首先需要在测试用例记录所在的 TMAssetRegistry 记录下建立相应的文件位置记录,也即是关联测试脚本在网络上所存放的共享路径。在实际操作中,由于测试脚本有可能存在于不同的项目中,我们的建议是建立一个共享目录,然后将所有的测试脚本项目都统一集中放在该共享目录下以便于执行和管理。在关联脚本之前先在RSDP中连接上所需要涉及到的测试脚本项目。
5.2.2 通过 TMConfiguratedTestCase 记录来执行 RFT 自动测试脚本
由于 RFT,RMT 和 RPT 的测试脚本运行会产生测试日志,当前的用户对共享目录应该有修改的权限。
5.3 测试脚本执行结果的处理
在脚本运行完毕后,测试日志记录将会显示在测试结果视图的未提交分类中。同时最近提交到数据库中的测试日志记录也将显示在测试结果视图中。该记录会显示运行结果,测试用例的描述信息,运行的测试脚本类型,运行的测试脚本和生成的测试日志所在位置。我们可以根据这些信息分析测试脚本运行情况,并且将该记录提交到数据库中甚至根据测试结果直接提交 Defect。在测试结果视图中用右键点击“提交 Defect”选项:
6. 集成需求软件 - Rational RequisitePro
6.1 与 ReqPro 集成的优势
通过 ReqPro 和 CQTM 的集成,用户可以将 ReqPro 中的需求记录与 CQTM 中的测试相关记录关联起来。
6.2 集成的步骤
CQTM 和 ReqPro 的集成需要通过 Rational Administrator 建立的项目,使用 Rational Administrator可以使 ReqPro 项目与 CQTM 用户数据库相关联。用户首先需要使用 CQTM 集成属性来配置 ReqPro 需求类型,CQTM 记录必须配置为引用 Rational Administrator的项目和需求。
6.3 集成后 CQTM 在测试管理中增加的特性
在 ReqPro 客户端中,双击需求记录,在“Requirement Properties”窗口中选择“Attributes”附签,就可以看到刚才关联的测试计划记录
通过右边的浏览按钮,用户也可以直接在 ReqPro 客户端中对需求记录关联 CQTM 的记录,如图 28 所示,用户可以查询并选择关联需要的 CQTM 记录。用户甚至可以通过“New Record”按钮直接创建 CQTM 记录。
7 总结
本文详细介绍了 Rational ClearQuest TestManager对测试管理的定义,对测试过程中各种测试资产的运用,并且通过介绍 CQTM 同其他 Rational 产品的集成,更加完善了在自动化测试中对 CQTM 的应用以及对测试脚本的版本管理。


软件测试精要前 言
第1章:测试态度,强调态度对成功的重要性和树立积极的测试观念。第2章:测试策略,涉及资源管理、策略制定和效率优化等实战技巧。第3章:自动化测试,深入理解自动化测试的重要性和实施策略。第4章:性能测试与Troubleshooting,讲解性能测试的深度和问题定位技巧。第5章:安全测试技术,探讨测试与黑客技术...

管理者如何用关键思考 强化决策能力
管理情绪有三个工具:第一,从语言、肢体、音调里觉察自己与对方是否有强烈的情绪,如果存在,则可以暂停讨论;第二,避免放大自身的行为,例如非常需要肯定与赞美的人,就应该避免重复强调自己的努力与贡献;第三,我们在强烈的情绪之下,仍应提醒自己关注事情的关键点。 人类往往倾向于认为自己是最好的,如果你愿意聆听身边同...

软件测试工程师发展规划路线
开发者调试工具测试应用 虽然浏览器的 F12 被命名为开发者工具, 但实际上测试不管在功能测试还是自动化测试中, 都起到了很关键的作用。如解析 HTML, 定位元素, 调试脚本, 监控网络抓包等等 互联网程序网络架构 通过网络架构详细理解互联网程序的诞生, 逻辑细节, 互联网通讯原理又是如何将数据传递到其他计算机的, T...

怎样管理好技术团队
在每个检查点,需要检查一下完成进度,对于大的需求,可能时间跨度比较大,所以检查点比较多,对于小的需求,可能一周之内就 OK ,所以管理者需要做的是关心完成的状况与质量,以及是否按时完成,而不是去关心责任人在完成过程中又上了几次厕所,午饭时间又超过了几分钟等等。可能在过程中管理者唯一要介...

软件项目管理的重要性
软件项目本身是沟通的产物。从客户需求的前期调研到需求分析到架构设计再到编码设计实现到贯穿项目过程中的测试修改再到上线发布等等这一系列工作都是以沟通为基础的。沟通不仅仅是软件项目管理的必要手段,沟通更是软件项目建设过程中的必需工具和必不可少的重要工序。在做软件项目测试服务的过程中经常听到...

好的测评量表应具备哪些条件? 能举例分析吗?
公文筐测试:把被测试者置于一个模拟的工作环境中,与通常的纸笔测验相比,显得生动而不呆板,这项测评为每一个被测验者都提供了均等的场景、条件和机会,较能反映被测者的真实能力水平,也可以做到比较直观的测查。公文筐测验除了可以用作评价和选拔管理人才外,还可以用于培训如何提主管人员的管理技巧、解决人际冲突和...

测试工程师的职业规划
如果你能够在测试行业做到顶尖水平的话,那么就可以晋升到测试专家岗位,争取到50k+的月薪。做软件测试工作是比较容易升职到管理岗的,因为测试人员可以更加全面地看待问题,对全局的把控能力更加出色。如果你的职业规划是做管理人员,那么积累了几年技术层面的经验之外,就有机会晋升为测试组长,月薪在10k-...

单体测试的简介
最后要提交测试结果报告书,开发人员修改后再测试。项目管理者要对测试结果进行抽查,如果发现Bug没有测试出来的原因是测试人员不够认真,这时要建立相应的处罚机制,比如说这个Bug不仅要记在开发人员身上,同时也要记在对应的测试人员身上。

什么时候应该进行自动化测试
2.测试自动化是一个长期的过程 首先,不能期望自动化测试在短期内找到很多Bug,自动化测试只有在长期的多次运行后磁能体现它的价值。其次,不要认为只要购买了工具,录制一些脚本,然后就可以安枕无忧的看着自动化测试实现想要的效果,需要考虑自动化测试脚本维护成本,随着被测试应用程序功能的增加和修改,...

职场中的“向上管理”真的有用吗?具体该怎么做呢?
再说做好“向上管理“的第二层含义,聪明的管理上级对你的预期。领导嘛,经常是嘴巴动动图一时口嗨或者灵光乍现得想法,却不知道下属要为此付出多少心力。试问自己,在跟上级的沟通过程中,是否真的明白了上级对你的期望?有时候只是你以为你理解了而已,当领导提出让你不太认可的要求时,如何让他接受...

武山县18473945720: 哪个用例管理工具适合selenium自动化测试 -
翟馨定风: IBM Rational Quality Manager(RQM)是一款基于 Web 的出色的质量管理软件,用于贯穿软件生命周期的综合测试规划和测试资源管理.它提供了多种适配器与其他工具集成,使 RQM 能够管理并运行由其他工具创建的自动化测试脚本....

武山县18473945720: 如何使用Robot实现自动化测试 -
翟馨定风: 可以.一般的功能测试是基于图形化界面的,业界最流行的工具是QTP ,winrunner,IBM Rational Robot, rational robot. 开源的工具: watir, watin具体做法: 1.录制脚本,强化,回放 2.手写脚本,回放补充: 只有mercury(HP),IBM等几个公司编写测试软件.一般公司都不编写测试软件,所谓的自己写自动化脚本,是说自己利用常用的编程语言来写代码,用于测试软件.现在自动化测试是以用测试软件为主.

武山县18473945720: 微软自动化测试工具有哪些? -
翟馨定风: 常用的9种自动化测试工具:QTP全名HP QuickTest Professional software ,最新的版本为HP QuickTest Professional 11.0QTP是quicktest Professional的简称,是一种自动测试工具.使用QTP的目的是想用它来执行重复的手动测试,主要是用于...

武山县18473945720: 现在最常用的软件测试工具有哪些啊? -
翟馨定风: 有IBM 的Rational Teststudio测试套件,还有MI 的Winrunner Loadrunner 和qtp测试工具,总的 来说分为功能测试工具和性能测试工具以及测试管理工具.

武山县18473945720: 软件测试的基础测试工具有哪些?
翟馨定风: 测试工具一般可分为白盒测试工具、黑盒测试工具、性能测试工具,另外还有用于测试管理(测试流程管理、缺陷跟踪管理、测试用例管理)的工具,这些产品主要是MercuryInteractive(MI)、Segue、IBM Rational、 Compuware和Empirix等公司...

武山县18473945720: 简单叙述IBM、MICROSOFT公司的软件测试方法?作为测试人员,是否需要具备开发能力? -
翟馨定风: 答(仅供参考):不同的软件公司会根据自己的产品特点,制定出自己的一套测试方法论,这些不同公司的测试方法各有特色.在微软公司,测试人员需要与软件开发人员一起参与到需求和设计的评审中,测试人员从测试的角度对需求文档、设...

武山县18473945720: IBM.Rational.Solutions做什么用的?用他工作需要插件吗?他包含了什么??
翟馨定风: Rational 软件是 IBM 软件集团旗下之第五大软件品牌, 通过提高企业的软件开发能力,IBM? Rational software? 可以帮助各组织机构创造商业价值.Rational 软件开发平台集成了软件工程的最佳经验、工具和服务.利用 Rational 软件开发平台...

武山县18473945720: 有那些主要的软件测试工具 -
翟馨定风: 1.目前市场上主流的软件测试管理工具有:TestCenter(泽众软件)、TestDirector(MI公司TD,8.0后改成QC),TestManager(IBM),QADirector(Compuware),开源工具有TestLink,Bugfree、Bugzilla等.要详细了解、对比各测试管理工具情况,可网...

武山县18473945720: 怎样正确做 Web 应用的压力测试 -
翟馨定风: 很难,这不是回答测试工具用哪个好,或者需要掌握哪一些知识点,或者需要什么样的理论基础,又或者需要了解系统具体业务的问题,甚至没有多少案例可以借鉴.关于工具的选择 不 少答案都提到了测试工具,但其实工具并不是最重要的,...

武山县18473945720: 目前主要流行那些测试工具? -
翟馨定风: 测试工具排行榜10大提名 企业级自动化测试工具WinRunner 提名理由:Mercury Interactive公司的WinRunner是一种企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行.通过自动录制、检测和回放用户的应用操作,...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网