四、FrameworkManager框架的组成
FrameworkManager框架主要由3大部分组成:
1.对象树文件(ObjectTree)
这个Excel文件作为可扩展的对象库(Object-Repository),它包含FrameworkManager识别对象所需要的所有数据,以及所有对象的元数据(meta-data),例如强制输入域等。
2.对象树类(clsTreeLevel)
这个类包含FrameworkManager的真正机制。在运行时,根据对象树Excel文件生成对象树实例,所以对象操作都是通过树节点进行封装的。
3.子类(Min、i-classes)
对于树中的每一个节点(例如clsTreeLevel类中的每一个实例),都可以“插入”(plugged)一个这样的子类(mini-class)。它们控制相关的程序对象如何输入数据、操作,如何产生随机的数据等。
● 对象树Excel文件
可以在\Resources\ObjectTree.xls中找到该Excel文件,如果要让clsTreeLevel.vbs正确地运行起来,请确保把clsTreeLevel.vbs文件中的sExcelFile这个常量的值修改为Excel文件所在的实际路径,对象树类与对象树就是通过这个常量关联起来的。
打开Excel文件可看到如图1所示的内容
图1
可以看到Excel文件分成两部分,左边部分是具有层次结构关系的对象树,右边部分是对象的相关属性,例如QTPClass、InPutType等。
下面解释一下Excel表中右边部分的各个列名所代表的属性的含义:
◎ Mandatory – True/False:用于标识该输入域是否为强制性的。
◎ Condition-只有当该输入域的条件得到满足时,才输入。在Excel单元格中填写的格式是:FieldName>Expected Value| FieldName>Expected Value(多个条件用“|”隔开),例如VB Demo_Example 2_Field 1_Enable_Flag>False表示在对象数中该节点的值必须为False。对于负条件,则使用:FieldName>%NOT%UnExpectedValue
◎ PreActions – 在输入之前必须完成的操作,填写格式为:FieldName>Value|FieldName>Value(多个前置的操作用“|”隔开),输入空值可用“%EMPTY%”表示。
◎ PostActions-与PreActions类似,用于表示在输入之后必须完成的操作。
◎ DPID-对象的描述性编程字符串,例如:vbname:=Something|visible:=True。如果不想使用描述性编程,而是希望通过自己编写的函数来指向一个QTP对象的话,则可使用“%FunctionName%”来获取,例如下面的GetBrowser函数:
Function GetBrowser(sRedundentParam) If Browser("Something").Exist then Set GetBrowser = Browser("Something") Else Set GetBrowser = Nothing End If End Funtion |
◎ QTPClass-指定对象的类型(micclass),例如VBCombobox、Browser等。
◎ InputType-当给对象树的某个节点输入时采用的子类,例如Text、Combo。这里填入的子类名加上前缀“Input”和后缀“Class”就成为脚本中能识别的子类(mini-class),对应IputClasses.vbs中的InputTextClass、InputButtonClass等。
◎ Type-对象树节点的业务逻辑意义,例如Field、Tab、SaveButton等。
◎ RandomValueType-当给对象树的某个节点随机输入时采用的子类,例如Text、Combo等。这里填入的子类名加上前缀“RandomValue”和后缀“Class”,就成为脚本中能识别的子类,对应RandomValueClasses.vbs中的RandomValueTextClass、RandomValueCheckboxClass等。
◎ ValueInObject-对象树节点的输入操作被验证时所需的标识。有时候在一个字段输入一个值后,需要访问另外一个字段或对象,以便检查输入是否成功。
◎ ValidatePattern-用于验证输入操作的正则表达式。用%Value%表示原本的输入值。用“.*%Value%.*”表示实际值中只要包含了原本的值即为成功。
版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
相关阅读:
查看全文请点击下载:http://www.51testing.com/html/14/n-101614.html