原创日志转载请标明出处与连接! 大家的支持是我的动力!_______卢晨之 (luchenzhi@21cn.com/@hotmail.com)

【养成良好的Dim习惯】

上一篇 / 下一篇  2009-05-27 15:35:42 / 个人分类:QTP

51Testing软件测试网/N3b+en*vy}_+I7\

     VBS脚本语言的自由语法放纵着编写脚本的我们,在脚本中的变量的定义往往容易被忽略,自然也会带来不少问题。51Testing软件测试网)ri3SwY

e5b T_@y0n+? },?0     在这里简单介绍一个实现全局变量的方法:51Testing软件测试网n&Mc[0Ay:O&?8r

m!O.p;b&ml0     1,新建一个VBS文件,代码内容是51Testing软件测试网z9U,V+Q-l y(Ag

-vqc ^8Xk]2s1Q0        dim aa51Testing软件测试网:J`Iq-PRpp&H

y&Bt_N"Q$cR$u0        aa=151Testing软件测试网BZu!oO]e

51Testing软件测试网0fI`_)Qw{Y

     2,打开QTP,setting-->Resources-->Library,添加刚才的VBS文件。

'C+?F A-q$d L cF0

6S0}8B)`j-J(R8KH eAb0     3,在Action 1中,简单的使用一句 msgbox aa

6g0@xY$v%G T b0

T-U6W rteh0     4,新建一个action 2,也是一个msgbox aa51Testing软件测试网/Z0Nm(WqaH9f$w%p'[

51Testing软件测试网F\'B'~&W)r^x` \

     那么做到这里,我们可以看到AA出来的结果都是1,很明显我们已经成功使用到了vbs文件中的这个变量

0z L'Mfl-{0

+Txq_8{)m7Rs0T.v0     为什么要在这里强调我们需要使用DIM的重要性呢?51Testing软件测试网'ED G2W8K

AA4E3uMfl+}(N}2c0     可能你不知道原来被引用的文件里面有AA这个变量,所以你在ACTION中写到:

O'z*w&so f051Testing软件测试网kI|0r5{6C

    Action 1:    

Z3dz/?-z$R2uY051Testing软件测试网3?mdk p!t4q

     aa=251Testing软件测试网.\1j%YP VP@$k6U%\

51Testing软件测试网*?5J9D{$_^#xJ

     msgbox aa51Testing软件测试网$s:FR q${*A hP w)w-R]

L"]e"z\?s0   Action 2:

Un(bE?8}ay051Testing软件测试网-m'E!kB&m:S\

     msgbox aa  '(我们在不知道的情况下,并不希望这个是2,而是变量中的1)

y`*aP.`7]jhrZ051Testing软件测试网YY#{$xa

      最后的结果都是2。51Testing软件测试网#qI FGvSB8w

51Testing软件测试网~f7tF&b/KF

     避免这个情况的发生就是使用dim,来把action1中的aa变成一个局部变量。

\5x?nXH0

'B+n!E&E3B2n0     Action 1:51Testing软件测试网0]c(H7R'v's R8h]

51Testing软件测试网 Cb|Nr9k;k$F#V

     dim aa

iZ-X-t$V Ta:V0u,cg.P3H051Testing软件测试网] Q3SN)Z

     aa=251Testing软件测试网3rK7yo%T3X

fKq1Fk]$Y G0     msgbox aa51Testing软件测试网%LT#AbP Q%W

:E"O0y[!zn!j0     Action 2:

U,d$u~ wb:U0

t mk&H-rpZ&Y.^0     msgbox aa

8K_;?"e Xp0^/E2f0

7uYFN O0    最后的结果是 2,1 这样就能够更好的避免的由于局部变量与全局变量带来的不必要麻烦。51Testing软件测试网M}!E+Ajx-F;W

51Testing软件测试网B \.g ^T/N.Z

   

L@$LVXCNf6o]0

TAG:

假装不在 引用 删除 假装不在   /   2009-06-13 11:44:15
原帖由tianmimi521于2009-06-12 09:25:18发表
也就是说想用局部的就得在action中dim一下就区分开了吧?理解的对不?


可以这么说
菜菜的测试人生 引用 删除 tianmimi521   /   2009-06-12 09:25:18
也就是说想用局部的就得在action中dim一下就区分开了吧?理解的对不?
假装不在 引用 删除 假装不在   /   2009-06-04 23:19:32
原帖由yimao1029于2009-06-04 23:13:00发表
最后一段的最后的结果是 1,2 不对吧  最后的结果应该是2,1吧

这都被你看到,写错了。
永远的测试人生 引用 删除 yimao1029   /   2009-06-04 23:13:00
最后一段的最后的结果是 1,2 不对吧  最后的结果应该是2,1吧
shuishixingyu的个人空间 引用 删除 shuishixingyu   /   2009-05-28 14:36:09
这也能研究出来呵
假装不在 引用 删除 假装不在   /   2009-05-27 20:00:40
原帖由jifeng于2009-05-27 17:51:14发表
在QTP里写上这个Option Explicit,有时就不能乱写了!

Option Explicit 这个我很少用
季风的测试生活 引用 删除 jifeng   /   2009-05-27 17:51:14
在QTP里写上这个Option Explicit,有时就不能乱写了!
假装不在 引用 删除 假装不在   /   2009-05-27 15:57:22
懒惰的我~~
^o^ 引用 删除 泥泥虫   /   2009-05-27 15:57:16
我是来支持下的
 

评分:0

我来说两句

Open Toolbar