级别: 中级 Fariz Saracevic (fariz@us.ibm.com), 高级 IT 工程师, IBM
2007 年 6 月 07 日 学习如何为 Siebel Test Automation 使用 IBM Rational Functional Tester Extension,我们使用 Siebel 7.7 或者 7.8 应用程序版本。
这篇文章描述了如何在 Siebel 中使用 IBM® Rational® Functional Tester Extension,来帮助我们成功的完成 Siebel 7.7 和 7.8 版本在业务部门中的更新和部署。适用于 Siebel 的 IBM Rational Functional Tester Extension 继承了 Siebel Test Automation (STA) 的优点,这在 Siebel 7.7 版本中有详细介绍。STA 提供了一系列新的自动化测试接口,用来优化测试平台。将 Siebel Test Automation (STA) 模块和适用于 Siebel 的 IBM Rational Functional Tester Extension 或者适用于 Siebel 的 IBM Rational Performance Tester Extension 结合,可以显著的降低功能测试和负载测试的费用。由 Siebel Systems 引导的一项研究显示,通过使用自动化测试工具作为接口来和 STA 模块连接,负载测试的花费可以降低大约75%,功能测试的花费大概可以降低33%。
适用于 Siebel Test Automation 的 IBM Rational Functional Tester Extension 支持 Siebel 的 7.7 和 7.8 版本。
准备工作
- 安装 IBM Rational Functional Tester V7.0。
- Siebel 的扩展在 Rational Functional Tester add-ons(只可作为浮动证书)中依然适用。扩展可以使 Rational Functional Tester 分辨出 Siebel 应用程序中的 Siebel Standard Interactivity (SI) 和 High Interactivity (HI)对象。Rational Functional Tester 基础版的安装仅仅使用坐标的点击就可以操作这些控件,但是不能从这些控件中抽取数据。
- STA 库和 Siebel Web Engine(SWE) 组件一起被安装在 Siebel 服务器上。
在服务器上激活自动化测试(查看列表1):
- 打开您需要测试的应用程序的.CFG文件,然后在 SWE 部分设置 EnableAutomation 和 AllowAnonUsers 选项的值为
TRUE:
列表1:激活自动化测试
[SWE]
...
EnableAutomation = TRUE
AllowAnonUsers = TRUE
...
|
- 如果想在您的 Siebel 应用程序上执行功能性的自动化测试,那么您必须通过使用 SWE 命令来告诉 SWE 产生自动化测试信息。要这么做只需在 URL 地址后面附加 SWECmd=AutoOn 参数,例如:
http://hostname/callcenter/start.swe?SWECmd=AutoOn。这个参数的作用是告诉 Siebel Web Engine 为 Siebel 应用程序产生自动化测试信息。
注释:
- 如果未安装 STA 或者其配置不正确,那么 Rational Functional Tester 软件将不会产生任何错误信息或者警告来告知您。脚本记录将会产生,这样的话对象将作为 ATL 或者 HTML 对象被识别,而不是 Siebel 对象。
- 虽然 Rational Functional Tester 产品运行在 Linux 操作系统上,但是 Siebel Test Automation 的扩展仍然可以在 Microsoft® Windows 操作系统平台上使用。
如何使用 Siebel 应用程序的记录和回放功能
当您准备做记录时,您需要再做一个额外的决定。默认状态下,Rational Functional Tester 工具使用库名称作为记录的名称,当然您也可以使用用户接口的名称作为 Siebel HI 控制的名称。如果您打算使用 UI 名称命名,那么请在 HKEY_CURRENT_USER/Software/Rational Software/Rational Test/8 路经下建立一个新的注册键(dWord),然后将其值设置为 1。(查看图1。)
图1:使用库名称和 UI 名称命名记录的区别
按照下列步骤进行记录:
- 点击 Record 打开功能测试脚本的记录功能。(查看图2。)
- 输入脚本名称
- 选择脚本文件夹的位置
- 点击Finish按钮。
图2:IBM Rational Functional Tester Record 窗口
当开始记录时,功能测试组件之间将会开始交互作用。随着用户在打开的浏览器中的 Siebel 应用程序中执行命令,Siebel 应用程序将会和 Siebel Web Engine 交互作用,将信息传回到 Rational Functional Tester 工具中(查看图3)。
图3:记录期间功能测试组件之间的交互作用
当您的测试完成时,请停止记录,随后测试脚本将会自动产生。图4显示了一份自动生成的样本测试脚本。您可以在其中看到 Siebel 对象和一些相关事件的记录。这样可以让用户通过使用 Siebel 的对象模块,捕获和回放 GUI 层级的交互作用信息,从而校验 Siebel 自定义组件中的属性和数据点。当然我们也可以使用 Rational Functional Tester 数据池框架来完成这项工作。
图4:记录测试脚本
图5显示了测试脚本回放期间功能测试组件的交互作用。
图5:回放期间功能测试组件之间的交互作用
排除故障时的提示
在使用了 Siebel 7.8 版本后我们现在回到 7.7 版本
当我们从 Siebel 7.8 版本转换回 7.7 版本时,IBM Rational Functional Tester V7.0 不能够识别 Siebel 7.7 版本的控制命令。当您使用 Siebel 7.8 版本时,Microsoft® Internet Explorer® 将会自动将适用于 Siebel 的最新版本的 Microsoft® ActiveX® 对象安装在您的电脑上。因此,如果您已经在 Siebel 7.8 上使用过 Rational Functional Tester 工具,那么当您想要使用在 Siebel 7.7 上再次使用它时,软件将不会在 Siebel 7.7 控制中被识别。
用来移除 Siebel ActiveX 对象(例如,Siebel High Interactivity Framework,Siebel Test Automation)的目录是C:\WINDOWS\Downloaded Program Files 文件夹,然后请再次尝试使用 Siebel 7.7应用程序做记录。
安全警告窗口
当您第一次使用您的 Siebel 应用程序打开 Rational Functional Tester 工具时,Siebel High Interactivity Framework 将会被加载。选择 Yes 来安装并运行 Siebel High Interactivity Framework。(查看图6。)
图6:Siebel High Interactivity Framework 警告
Siebel 浏览器检查
如果您的浏览器没有配置 Java™ Runtime Engine,那么图7中显示的窗口将会在 Siebel 浏览器检查期间出现。如果它出现了,您就需要安装相应版本的 Java Runtime Engine 来支持(查看 Siebel Browser Check 窗口中的 Details 部分)。
图7:Siebel 浏览器检查
配置 Client Automation Server 超时
Client Automation Server (CAS) 提供了一种配置调用超时的机制,这样可以造成系统的延迟。默认设置下这个属性被设置为1秒钟,但是您可以通过设置 ivory.properties 文件中的rational.test.ft.siebel.cas_submit_timeout 属性来满足您的需求。
参考资料 学习
获得产品和技术
讨论
关于作者  | |  | Fariz Saracevic 是 IBM Software Services Rational 的一名高级 IT 专家。他在质量保证方面拥有丰富的经验,他目前的主要研究对象是软件测试自动化。Fariz 已经为多个软件测试小组做过咨询、指导和培训。他拥有维吉尼亚技术学院的信息技术硕士学位。您可以通过电子邮件联系他:fariz@us.ibm.com。 |
对本文的评价
|