51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3542|回复: 11
打印 上一主题 下一主题

关于自己写的function

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-4-13 10:51:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问,能不能把自己写的function放到一个外部文件里去, 然后就象WR自己的函数一样调用? 就象QTP里的vbs一样,只要将这个vbs文件放到resource选项的Associated library files列表里去, 就可以直接调用这些函数,而不需要写成一个脚本,然后先call这个脚本,之后才能调用这个函数呢?

请大侠指教.
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2006-4-13 14:39:40 | 只看该作者
可以做成脚本或者模块保存,用call/load命令调用
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2006-4-13 16:22:45 | 只看该作者
不好意思, 是不是要把这些文件编译成dll?
如果要编译成 dll, WR里应该怎么做呢?

再次感谢!!!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2006-4-13 16:53:58 | 只看该作者
不用,保存为脚本就可以了
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2006-4-13 17:24:50 | 只看该作者
谢谢版主,
我找到了一个解决办法, 把自己写的function保存为一个脚本, 保存到C:\Program Files\Mercury Interactive\WinRunner\lib, 文件名如 : function_for_Sys, 修改这个的测试属性为compiled,
再用WR打开C:\Program Files\Mercury Interactive\WinRunner\dat\下地脚本 tslinit, 在最后加上一句
"load( m_root & "\\lib\\function_for_Sys",0,1);"
这样,我的脚本里面的function就可以被任何一个其它脚本 调 用了,而不需要再写任何load或call声明了.

不过这样做的一个缺点就是 可移植性不好. 换一台机器, 就可重新去修改一下tslinit, 并复制一份function_for_Sys.

不知版主有什么好的办法.
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2006-4-14 12:44:47 | 只看该作者
顶一贴
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2006-4-14 15:53:49 | 只看该作者
多嘴问一下楼主,我现在正在学习wr,C:\Program Files\Mercury Interactive\WinRunner\dat\下的脚本tslinit是做什么用的,您在下面加load语句的作用有是什么?如能回复不胜感激。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2006-4-14 18:20:40 | 只看该作者
tslinit用于初始化WR, 此时会装载一些WR内置的功能函数.

我在下面加load的语句的目的是让它把我自己写的函数当成系统级的函数装载. 这样,在我的其它脚本里就不用再写任何的load此函数了,这样方便了很多.以后有自己写的通用的函数, 就放到function_for_Sys里去,其它地方都不需要再做申明就可以调用了.
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2006-4-17 09:51:26 | 只看该作者
原帖由 iyaw 于 2006-4-13 17:24 发表
谢谢版主,
我找到了一个解决办法, 把自己写的function保存为一个脚本, 保存到C:\Program Files\Mercury Interactive\WinRunner\lib, 文件名如 : function_for_Sys, 修改这个的测试属性为compiled,
再用WR打 ...

解决办法其实很简单,写个应用程序,装完了WR,再启动你写的应用把你这个文件覆盖原来的就行了。
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2006-4-17 10:21:47 | 只看该作者
又长见识了,多谢楼主!!
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2006-4-19 15:25:25 | 只看该作者
你为什么不写个Compile Module的Script,Include你需要的User-defined Functions
and call them in your main test script via reload statement.
回复 支持 反对

使用道具 举报

该用户从未签到

12#
 楼主| 发表于 2006-4-24 12:40:32 | 只看该作者
这些是自定义的标准功能函数库, 没有必要每次都去load,让系统一启动就load,就更方便了.
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-9 03:59 , Processed in 0.075556 second(s), 30 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表