【软件测试自动化-QTP系列讲座 37】== MFL自动化路径模型对象应用 ==

今天讲的内容比较精彩也比较重要。希望不要错过,耐心看完,呵呵,在自动化测试中不管是相对路径还是保留对象PathFinder在框架开发中都是常用+实用。大家都知道对于一个脚本的相对路径的实现是非常重要的,这样方便以后的脚本移植,同样也能方便管理QTP的一些加载的对象、函数、场景恢复function,环境变量等等。

  • 相对路径设置方法: Tools -> options -> Folders ->

【软件测试自动化-QTP系列讲座 37】== MFL自动化路径模型对象应用 ==

如图我们可以看到QTP默认存在的一个<current test>这个就是本test的一个动态路径,此处添加了"d:\framework\",也就是我设置的相对路径,如果此时我在这个路径下有一个tsr的对象库文件,就可以直接使用相对路径加载到共享对象库里。如图

【软件测试自动化-QTP系列讲座 37】== MFL自动化路径模型对象应用 ==

当然如果是开发框架的话完全可以使用AOM在QTP启动时就事先加载好这些路径,不过今天我讲的重点不在相对路径的设置。


而是一个非常有用的对象,就是PathFinder对象,这才是我今天要讲的核心部分。

其实PathFinder我相信很多朋友也一定很熟悉,QTP中的普通的不能再普通的保留对象,而今天我就要把它的作用完完全全的发挥出来。

  • 普通用法: msgbox pathfinder.Locate ("123.vbs")

当我们在QTP中输入pathfinder之后输入"."后QTP会由于complete word而自动补充Locate方法。也就是说在QTP中,pathfinder就只有这一个Locate方法。此方法返回一个相对路径的完整路径。而由于我们之前设置过"d:\framework\"的相对路径,因此我们运行后会显示完整的路径。

这一点相信很多人都会使用,也应该都很熟练了。

  • 隐藏用法: (MFL自动化路径模型)Mercury.FileLocator (QTP的所有帮助文档中都没有任何蛛丝马迹)

其实这个MFL自动化路径模型对象就是在QTP中的PathFinder对象,那我们就来见识一下MFL对象的庐山真面目。

打开vbsedit。输入Set mfl = CreateObject("Mercury.FileLocator")并查看mfl的方法

如图:

【软件测试自动化-QTP系列讲座 37】== MFL自动化路径模型对象应用 ==

在vbsedit中我们可以发现MFL对象的所有方法,同样Locate方法也在里面。

我们可以使用一下其中的几个方法:

  • count方法:获取相对路径的个数

-> msgbox PathFinder.count

  • CurrentTestPath方法:获取当前测试路径

-> msgbox PathFinder.CurrentTestPath

  • Insert方法:运行时动态插入一条相对路径,参数1为路径,参数2为相对路径的index

-> PathFinder.Insert "D:\Program Files", PathFinder.count+1

运行完我们可以看到在Tools -> options -> Folders ->下自动插入了一条记录。

小结:

剩下的方法大家可以自行去研究,这里就简单的介绍几个比较实用的。今天这一章主要就是讲MFL的这个对象,此对象在路径控制上非常有用,特别是在框架开发中。大家一定还在琢磨我为什么会知道这个对象吧。其实很简单,还是注册表。

宝藏地点:

进入HKCU -> SOFTWARE -> MERCURY INTERACTIVE -> QuickTest Professional -> MicTest -> FileLocator

可以看到prog id的键值为: Mercury.FileLocator

【软件测试自动化-QTP系列讲座 37】== MFL自动化路径模型对象应用 ==

还不快去挖你的宝藏?

你可能感兴趣的:(框架,软件测试,脚本)