基于Rational Functional Tester 的测试脚本自动修复技术

发表于:2008-4-29 14:33

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

 作者:未知    来源:网络转载

  软件测试是保证软件质量的重要手段。软件自动化测试对于提高测试效率与测试质量起着重要作用,但由于被测系统的复杂性,使得软件自动化测试变得难以实施。本文就是基于 RFT 的三层测试框架的基础上,提出了脚本修复技术,提高脚本的使用率。
1 基于 RFT 三层测试框架

  由于 GUI 软件测试自身多变的特点,目前在软件测试脚本生成技术上主要采用分层的概念,尽可能低地降低界面变化对测试脚本的影响。本文就是基于 RFT 的三层测试框架的基础上,提出了脚本修复技术,提高脚本的使用率。下图就是典型的三层测试框架结构。


图 1. 三层测试框架结构

三层测试框架结构

1.1 对象的表示

  在描述 GUI 对象的表示时,本文将使用 Rational Functional Tester 来获得被测程序的所有对象。图描述了 Rational Functional Tester 对捕捉到的所有被测对象的组织。点击 MyNotePad 程序中 About 菜单中 AboutMyNotePad 菜单项时弹出的 About Dialog 对话框。图描述了 Rational Functional Tester 中 MyNotePad 程序中的对象组织结构。

  可以看到,MyNotePad 被组织成了一棵根节点是“MyNotePad”的树,它有 3 个子节点,分别为 About Dialog 对话框、MenuBar 和 TextArea。About Dialog 对话框有 2 个儿子节点,分别为 OK 按钮和一个 label 存有 about 信息。MenuBar 有 3 个子节点,分别为 File、 Edit 和 About。TextArea 没有子节点。

  可以看到,Rational Functional Tester 将 AboutDialog 对话框作为根节点 MyNotePad 的直接子节点。事实上,Rational Functional Tester 会将所有的弹出窗口存为根节点的直接子节点。使用这种组织结构,不可能从图中了解到弹出窗口和其它 GUI 组件之间的关系。比如,AboutDialog 对话框应该在什么状况下弹出?对于这种问题无从得知,所以无法完整的表示 GUI 上对象之间的关系。为了解决这个问题,本文调整了被测程序的 GUI 对象组织结构,形成了一颗新的树形结构的图,称之为对象树。如图所示。这样的树形结构可以很容易的看出各个组件之间的依赖关系。


图 2. 树形结构

树形结构


 

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

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号