实属转帖,方便以后查找
~
QTP9.2版本,以下内容适合QTP和vbs。
路径一:QTP的测试当前路径
environment("TestDir")
使用environment("TestDir")能获取当前测试的绝对路径,不包括最后的“\”
方法:
Path = environment("TestDir")
路径二:
QTP安装目录下bin目录的路径
WshShell.CurrentDirectory
(注:不包括地址最后的“/”)
方法:
Dim WshShell,path
Set WshShell = WScript.CreateObject("WScript.Shell")
Path = WshShell.CurrentDirectory
以上为vbs中的用法,
如果是在QTP中使用,
则可以用以下方法(vbs也可以用以下方法):
Dim WshShell,path
Set WshShell = CreateObject("WScript.Shell") „
就这一句少了
“WScript”
Path = WshShell.CurrentDirectory
注意
:此方法在
】QTP
运行时获取的将是
QTP
安装目录下
bin
目录的路径,如果是写在
vbs
文件中,然后加载到
QTP
中,
在
QTP
运行时也是获取
QTP
安装目录下
bin
目录的路径。但
是如果是编辑一个测试脚本
(脚本里包含此获取路径方法,
或引用的
vbs
文件包含此获取路
径方法),然后保存(不要关闭脚本),这时运行脚本,则此方法将获取测试脚本存放的当
前路径。关闭脚本再打开运行,则还是会获取
QTP
安装目录下
bin
目录的路径。因此在调
试时可能是正常的,但到运行时就出错了。
而如果用
environment("TestDir")
,
则获取的都是当前测试的存放路径,
但是不能用在
VBS
文件中(除非此文件是加载到
QTP
中运行的,那就可以)。
例:
QTP
安装目录下的
bin
路径:
C:\program files\Mercury Interactive\QuickTest
Professional\bin
路径三:
vbs
文件的路径
left(Wscript.ScriptFullName,len(Wscript.ScriptFullName)-len(Wscript.ScriptName))
(注:包括地址最后的
“/”
)
方法:
Path = left(Wscript.ScriptFullName,len(Wscript.ScriptFullName)-len(Wscript.ScriptName))
注意
:此方法只能用在单独的
vbs
文件中,加载到
QTP
中的
vbs
文件如果含有此方法也会
报错。因为
QTP
不支持
WScript
。