技术开发 频道

框架经理-FrameworkManager简介

前言
    FrameworkManager是由Yaron Assa(www.AdvancedQTP.com)开发的一个开源的QTP自动化测试框架,目的是让QTP的脚本编写更为优雅和清晰(for elegant, clean scripting with QTP)。

一、FrameworkManager简介
    FrameworkManager处理了应用程序的UI层的所有麻烦和细枝末节的琐碎事情,让你编写出更好、更清晰、更简介的测试脚本。FrameworkManager除了提供一个极为简单的接口用于构建和维护脚本之外,还解决了QTP的对象库和描述性编程的问题。
 
    通常我们构建的代码会变得很臃肿,过于复杂而难以维护,例如写了很多的Select-Case或If结构的语句(如果输入域仅能接受Email格式数据,则这样;如果只能接受地址,则那样...)。按照这种方式写的脚本会难以维护,因为一旦被测试的应用程序添加了新的输入域,则需要重复很多代码修改和调整的工作,使用FrameworkManager则能让这些工作成为过去。
 
    FrameworkManager仅仅关注脚本需要的信息,从而保持脚本代码的简单,避免凌乱的代码。决策判断的结构语句被分解成独立的小类,这些小类可以被轻易地维护和更新,而不至于引入大量的BUG。更重要的是,FrameworkManager是环境无关的,能被轻易地扩展用于处理那些尚未被识别的对象和控件。

二、FrameworkManager的特点
    下面列举FrameworkManager的一些功能特性:
1.保持脚本简洁明了。处理对象变成了简单的oObject.Input(“New Value”)。
2.在内部自动处理不同输入类型,例如两个文本输入框,一个仅能输入Email,一个仅能输入数字。
3.在内部自动处理相互关联的操作,也就是说,把两个或多个对象操作组合成一个逻辑顺序的操作,例如单击一个按钮来验证输入框的数据;输入密码紧跟着验证密码。

4.在内部自动选择值验证的方式,例如:
Delegation – 在某个对象中输入一个值,但是在另外一个对象中显示出来。 Regular Expressions – 输入一个值,但是以前缀或后缀显示出来。
5.在内部自动处理条件输入-你可以很容易地设置一个标记来标识某个对象是不可输入的或不可操作的(untouchable),例如你有两个输入域,通过一个按钮来控制其“enabled”和“disabled”属性。
6.在内部自动处理随机值-例如从一个combo-box或list-box控件中随机选择其中的一项。
7.可轻易地为应用程序对象添加个性化的属性,例如标志某些输入域为强制性的(mandatory),把这些输入域与某个查询窗口中的数据域关联,然后在脚本中利用这些数据,快速填充这些强制性输入域的数据。
8.被测试应用程序的对象都被结构化成一个树状,让你可以在脚本中做复杂的对象搜索和操作,例如在某个TAB页下的所有输入框输入所有数据;从一个WebTable转到其父级的Frame中。
9.为了更好地组织对象树,可以添加一些虚拟的层次,从而得到一个可读性更强的对象树。
10.可扩展性强-可以在不修改已有代码的情况下添加新的数据类型产生和输入方法。FrameworkManager可以处理你添加的任何扩展、不可识别的控件和针对被测试应用程序的业务逻辑处理。
 

0
相关文章