QTP中调用共享文件

上一篇 / 下一篇  2007-06-18 16:47:53 / 个人分类:QTP

文章出处:51testing博客 作者:xiaonan 发布时间:2006-12-29
    在我们开发脚本的时候,发现有些脚本总是重复的出现在各个脚本中。那么我们是不是可以把这些脚本写成一个共享的function,放到一个共享的文件中?然后再给各个脚本调用呢?答案当然是肯定中。其实我在《QTP的一些小知识》中也提到了一个方法,就是利用ExecuteFile函数来调用.vbs文件。如:一个名为test.vbs的文件,我们只要在脚本中写上这么一句代码ExecuteFile("F:\test.vbs") ,就可以来直接执行这个.vbs文件了。

v`V!p v$]~.r2p0

x#nSYmj5^ G)KR051Testing软件测试网 a e(iJS3o u {d ?UE

    现在我再来介绍另一种方法,这种方法也是QTP本身所提供的。就是设置菜单选项“setting”中的"resource"选项来做到调用共享文件的效果。在"resource"选项中,有三种文件格式是可以被调用的,分别是*.sql;*.vbs;*.txt三种后缀文件。这里我用一个*.txt文件为例。

6}cTN7RK051Testing软件测试网i2~co)A5qCusREn

    新建一个名为test.txt的文本文件,其保存内容如下:(注:保存的内容也必须合法)51Testing软件测试网6v_y^(c c@)\

51Testing软件测试网x Q$z}H~zu

Function writeorderno(orderno)
q.^B@'L"e'CS&\0Dim fso, myfile51Testing软件测试网M?\vy1`}
Set fso=CreateObject("scrīpting.FileSystemObject")51Testing软件测试网 P0t$Oe;} M
Set myfile=fso.openTextFile("C:\result1.txt",8,false)51Testing软件测试网r*U9U%C"ri&v
myfile.writeline orderno51Testing软件测试网:m,}!@F zs#Tz
myfile.close
:v[RL|;G{0End Function

_f ~'xtv-oK`051Testing软件测试网)f Ue8m8i9l `3p+|0bz/l9F}

    一个名为writeorderno的Function,其作用是把传进来的值写到C盘名为result1.txt的结果文件中去。(注:结果文件也是事先要准备好的)。共享文件准备完毕,那么就开始设置"resource"选项。打开“setting”窗口,找到"resource"选项。点击“+”的button。选择前面我们建好的文件。如下:51Testing软件测试网dzZ+y"spLm

51Testing软件测试网QGQjd,u

51Testing软件测试网7eU$n-HRm3^ Gt

I Z?\ h0K0    确定关闭窗口。我们就来试验一下,是不是这个共享文件里的Function能够被调用了。在QTP专家视图里写上这么几句代码:

*tOSDk"V0

L S L;N)W}^0Dim order

0Ttux uK2y1t051Testing软件测试网4J/a+T7{&V K`C M*VX+uY

order=151Testing软件测试网 y Zq6Ly3A

51Testing软件测试网V?ll0ZQ|Q

writeorderno order

0g9X:v"xj051Testing软件测试网.z7kMJ4\2TI

    接下去就按run执行试验,结果测试通过。虽然在脚本中根本没对writeorderno函数做说明,但是当QTP运行到这句代码的时候,在本脚本里没说明的情况下,自己会到"resource"选项里去找。结果QTP能正确识别这个writeorderno 函数。打开c盘里的 result1.txt的结果文件,发现传进函数的值1,被正确的写了进去。预示着整个调用共享文件的成功。

:G1I W#]6]D}A3c)qR0

TAG: QTP

 

评分:0

我来说两句

我的栏目

日历

« 2024-04-07  
 123456
78910111213
14151617181920
21222324252627
282930    

我的存档

数据统计

  • 访问量: 9317
  • 日志数: 16
  • 建立时间: 2007-06-12
  • 更新时间: 2007-06-21

RSS订阅

Open Toolbar