51Testing软件测试论坛

标题: 运行一次函数,返回值可以在运行的所有脚本中调用吗? [打印本页]

作者: xixiaoping    时间: 2009-5-6 17:52
标题: 运行一次函数,返回值可以在运行的所有脚本中调用吗?
问题:
1.写一个vbs脚本,里面的函数读取某一Excel中的若干值,并以数组的方式返回;
2.用TD执行QTP脚本,能否只运行一次此函数,以后所有脚本都可以使用这个返回的数组。(当然,可以每个脚本中都调用一次此函数,但脚本执行速度会很慢)
作者: dreamever    时间: 2009-5-7 09:34
以前我将vbs脚本加到lib中,然后所有的脚本都可以调用该函数,就象调用QTP库里的函数一样,脚本的执行速度不会慢,但是我读取的EXCEL有30列,200多行
作者: xixiaoping    时间: 2009-5-7 21:29
我现在就是在每个脚本的Resource里连接到写好的函数里,但问题是TD运行很多个脚本的话,每个调用这个函数的脚本都要运行一次这个函数.我想达到的效果是前面的脚本执行过这个函数后,后面的脚本就能直接拿到这个脚本中函数返回的值.
作者: dreamever    时间: 2009-5-8 09:11
那你需要把那个脚本函数的返回值存储到一个公共的数据变量中,用QTP的全局数据表或者自己定义的数据文件都可以,比如excel ,txt等
作者: xixiaoping    时间: 2009-5-11 10:13
这个公共的数据变量应该在哪里定义呢?
QTP的全局数据表你指的是脚本中的Global表吗?这个表里面的数据应该只是本脚本内可以使用吧?
作者: huizhen    时间: 2009-5-11 10:31
函数调用的时候,把函数返回值赋给Enviroment变量。Enviroment变量是一个全局变量。

使用Global表也可以,是全局用的,更简单。
作者: xixiaoping    时间: 2009-5-11 12:03
那这样的话是不是在一个脚本中调用了函数,并把值保存到环境变量里面的全局变量里面,然后其它脚本直接调用这个全局变量就可以了。
作者: xixiaoping    时间: 2009-5-11 13:29
这个Enviroment变量,应该只是定义的这个脚本的所有ACTION可以使用吧。我今天上午试过了,在一个脚本里定义的环境变量,在另外一脚本中是看不到的。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2