内容


使用 Rational Quality Manager 模块化测试脚本

构建一个可重用的脚本库

Comments

简介

随着企业应用程序增多和变得更加复杂,测试管理变成了一项令人生畏的任务。因为测试脚本和案例之间的流不明显,所以很难通过查看测试脚本和测试案例清单来断定覆盖范围。IBM® Rational® Quality Manager 4.0.1 中的关键词为您提供了模块化测试脚本的能力。一组模块化的测试脚本会变成一个特定于领域的框架,您可使用它来组装高级场景流。通过将详细步骤的实现延迟到一个较晚的阶段(通过使用手动脚本或编写自动脚本),测试架构师或产品架构师可集中精力使用关键词来构建高级场景流。如果在项目开头定义关键词,那么这些关键词会形成一个特定于领域的框架,使您能够专注于编写要测试的场景流,无需担忧测试步骤重复。

通过对特定关键词使用情况进行快速分析,可以提供最常用的关键词的线索。您可以使用 IBM® Rational® Functional Tester 或 Selenium 快速执行自动化的第一步,自动化这些关键词。测试规划人员或测试架构师可使用此方法让测试团队以某种结构化方式开展工作。

本文将使用一种虚构的 JKE 银行应用程序中的示例场景,展示如何为银行应用程序开发关键词和工作流。步骤包括:

识别操作

为一个操作开发一个关键词

使用这些关键词开发场景

关于 Rational Quality Manager

Rational Quality Manager 是一个用于测试规划和管理测试结果的协作中心。它是构建于 Jazz™ 平台之上的 Rational 协作式应用程序生命周期管理 (CALM) 平台解决方案的一部分。通过使用 Rational Quality Manager,维护自动化和手动的测试案例,可以实现测试案例的需求可跟踪性,并管理缺陷和开发计划等的变更。如图 1 所示,Rational Quality Manager 与 IBM® Rational Team Concert™ 和一些需求管理工具相集成,比如 IBM® Rational® DOORS® 和 IBM® Rational® Requirements Composer。Rational Quality Manager 是一个启用了 OSLC 的产品。它还能 与来自其他供应商的产品很好地集成

图 1. 协作式生命周期管理产品
CLM 管理需求、质量和变更
CLM 管理需求、质量和变更

关键词将测试脚本分组到一起

关键词是一种高级抽象,类似于 Rational Quality Manager 中将一组测试步骤分组到一起的子路由。这个测试步骤序列可以是手动或自动的。关键词可以帮助您模块化测试,创建一个用户流或业务脚本,将实际的实现延迟到一个较晚的阶段。非技术性主题专家可轻松地阅读和编写可读的测试案例,这些案例看起来类似于业务场景。这些测试案例可转换为自动化脚本,无需牺牲业务流表示。

为了将项目迁移到一组自动化的测试,可通过自动化脚本将一个关键词替换为一组手动步骤。

使用自顶向下的方法

通常,测试脚本的编写通过自底向上的方法来完成。测试工程师编写脚本,然后将它们分组到一个逻辑测试套件中。这种方法使得很难通过查看脚本细节来了解覆盖范围。通常,脚本名称是脚本测试的内容的惟一表示。如果需要通过阅读包含数千个步骤的测试脚本来了解覆盖范围,单单依靠脚本名称可能会很麻烦。通常,这些脚本很长,如图 2 所示。

图 2. 冗长的脚本步骤
冗长的脚本可能非常长
冗长的脚本可能非常长

要采用自顶向下的方法,需要将可在被测试应用程序 (application under test, AUT) 中执行的操作分解为原子操作,并定义这些操作执行的具体动作。测试脚本可使用这些原子操作构成。测试脚本看起来类似于图 3 中所示的脚本。

图 3. 由关键词构成的脚本
使用关键词编写的脚本很简洁

此方法使测试脚本容易阅读,更加类似于自然语言(英语、德语、日语和其他语言)。

自顶向下方法的优势有两方面:

  • 原子操作可重用。
  • 这些脚本容易管理和阅读。

以下各节将介绍如何创建和重用关键词来快速构造新脚本。

创建一个关键词清单

首先,识别原子操作。这些操作会成为可用于组成测试脚本的关键词的清单。在 Rational Quality Manager 4.0.3(和更高版本)中,单击 Construction> Create >Keywords 并创建一个关键词。在更低的 Rational Quality Manager 版本中,需要单击 Construction>Browse>Keywords,然后单击 + 图标来创建关键词。

您可以选择不填充各个关键词表示的各个步骤。此任务可在以后的一个阶段完成。甚至在构建 AUT 之前,主题专家或架构师就可以创建关键词清单,而不用为每个关键词添加步骤。各个开发人员或测试人员可在以后开发 AUT 时填入这些步骤。

关键词列表类似于图 4 中的列表。关键词表示 AUT 中的业务操作。

图 4. 脚本编辑器中的关键词视图
关键词,类似于业务操作

创建应用于高级场景的手动脚本

使用关键词清单来创作高级测试脚本。您也可以在手动脚本 中组装关键词。这段手动脚本用作类似于一个用例的高级父脚本。它需要主题专家或架构师能够轻松地读取和针对用例流而进行验证。

要创建一个手动脚本,可以单击 Construction>Create>Test Script。在该脚本中,将关键词添加到一个反映用例流的序列中,如图 5 所示。

图 5. 向脚本添加关键词
将关键词拖放到手动脚本上
将关键词拖放到手动脚本上

高级手动测试脚本可以非常详细,以测试一个特定的功能。如果需要审核或批准该流,可使用内置的批准机制。如果需要在电子邮件中将它发送给外部顾问或专家,可以 PDF 格式导出脚本,然后发送生成的 PDF 文件。

填入脚本存根的脚本步骤

接下来,使用以下方法之一来填充关键词的细节:

  • 手动更改一个步骤序列
  • 将自动化脚本与关键词相关联

填充一个详细的手动步骤序列

要使用手动步骤,可创建一个 Manual Script 类型的测试脚本,并填入手动步骤,如图 6 所示。

图 6. 为一个关键词创建脚本
Alt=附加到关键词的脚本较小
Alt=附加到关键词的脚本较小

将所有关键词填充到父脚本中后,就可以运行父脚本了。请记住,您可以使用这些关键词,通过拖放功能快速组装更多的父脚本。

使用手动步骤运行场景

现在父脚本已准备就绪,您可以将它添加到一个测试案例中并运行。运行包含父脚本的测试案例时,添加到序列中的所有步骤都会显示为一个测试脚本,如图 7 所示。

图 7. 运行包含关键词的父脚本
运行时,会展开关键词中的步骤
运行时,会展开关键词中的步骤

您会获得与使用自底向上的方法来开发脚本相同的优势。该脚本看起来类似,无论采用何种方法,在使用自顶向下的方法时,脚本清单都是模块化的。使用现有关键词来拼凑更多场景很简单,无需从头编写该场景的步骤。

通过将自动化脚本与关键词相关联,填充详细信息

无需创建手动步骤,您可以决定使用自动化工具(比如 Rational Functional Tester 或 Selenium)来构建您的自动化脚本清单。不需要一次构建所有脚本。您可增量式地添加自动化脚本并将它们投入使用,而不是等待记录整个场景。对于本示例,我们使用 Rational Functional Tester 记录关键词的自动化脚本。在 Rational Functional Tester 中,连接到 Rational Quality Manager 服务器和项目,查看所有关键词的列表,如图 8 所示。

图 8. Rational Functional Tester 或 Rational Test Workbench 中的关键词视图
Functional Tester 或 Test Workbench 中的关键词
Functional Tester 或 Test Workbench 中的关键词

可以从 Rational Functional Tester 中的关键词视图记录 Rational Functional Tester 脚本。也可以看到您记录的手动步骤。如果已经编写了脚本,那么可以将该脚本与关键词相关联。

备注:可以使用执行变量来在脚本中传入和传出数据。参阅 Rational Functional Tester 信息中心,了解有关的更多信息。

使用自动化脚本运行场景

随着您增量式地自动化脚本,您可以继续使用父脚本,其中组合了手动步骤和自动化脚本。

备注:如果使用 Rational Quality Manager 4.0.3 或更高版本,则需要找到关键词并将新记录的自动化脚本设置为默认脚本。

如果再次运行同一个测试案例,自动化的关键词会触发自动化脚本。拥有手动步骤的关键词仍是手动的,如图 9 所示。

图 9. 使用一个自动化关键词来运行
手动步骤与自动化脚本的组合
手动步骤与自动化脚本的组合

结束语

使用关键词,使测试管理变得更容易管理。关键词使您可以让脚本保持清单干净整洁,创建容易审核的高级脚本,以及改进测试计划,从手动步骤改进为自动化脚本。借助关键词,更容易确保充分的代码覆盖范围,因为您可以从测试脚本与用例之间的高级流的角度来审核测试脚本和测试案例清单。

参考资料

学习

查阅 developerWorks 上的 Rational Quality Manager 产品页面,获取产品文档、文章、教程、课程、下载等资源的链接。

Rational Quality Manager 信息中心 中浏览技术细节,查看 Rational Quality Manager 路线图 中的资源链接,帮助您开始开发了解 Rational Quality Manager。

有关的操作技巧,请查阅 Michael Kelly 编写的这些 developerWorks 文章:

随时关注专注于各种 IBM 产品和 IT 行业主题的 developerWorks 技术活动和网络广播

提高您的技能。查阅 Rational 培训和认证 目录,其中包含有关众多主题的许多类型的课程。您可以随时随地学习一些课程,许多入门课程都是免费的。

获取产品和技术

下载 Rational Quality Manager 的免费试用版

以最适合您的方式 评估其他 IBM 软件:下载试用、在线试用、在云环境中使用它。

讨论

加入 developerWorks 上的 Rational Quality Manager 论坛,其中还包含来自 IBM 的有关 Rational Test Lab Manager 的讨论和信息,以及访问 Jazz.net 上的 Using Quality Manager 论坛

Rational 社区 中联系同行并时刻关注最新信息。

通过 撰写一篇 developerWorks 文章 来分享知识,帮助其他使用 Rational 软件的人。了解 优秀的 developerWorks 文章的必备要素 和如何写出好文章。

FacebookTwitter (@ibmrational) 和 YouTube 上关注 Rational 软件,添加您的评论和请求。

加入 developerWorks 中文社区,developerWorks 社区是一个面向全球 IT 专业人员,可以提供博客、书签、wiki、群组、联系、共享和协作等社区功能的专业社交网络社区。


评论

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

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=1004432
ArticleTitle=使用 Rational Quality Manager 模块化测试脚本
publish-date=04282015