51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2898|回复: 13
打印 上一主题 下一主题

[求助] 请问yabest,你的对象库是怎么录制的。

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-7-25 12:06:31 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我看到你说除了主控模块,其余的都写成vbs放到函数库里面给大家共享使用。

你全部用的描述性编程?根本没有使用对象库?

你把所有的对象全部录制下来了?

你们之间所有人都在共享一个对象库?

到底有多少脚本共享了?

还有主控模块你一般都写点什么东西?

感谢回答~
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

14#
发表于 2007-12-20 11:58:10 | 只看该作者
原帖由 zhuyuancan 于 2007-12-20 09:54 发表
使用共享对象库,每次保存一个脚本时,共享对象库也随脚本一起保存,是不是显得有点浪费空间了!!!


用一个共享对象库比用多个Action对象库少占空间,因为多个Action对象库会有对象重复!

再说了,一个对象库就几M而已,这点空间对几百G的硬盘来说,完全可以忽略不计!
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2007-12-20 09:54:22 | 只看该作者
使用共享对象库,每次保存一个脚本时,共享对象库也随脚本一起保存,是不是显得有点浪费空间了!!!
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2007-12-19 12:38:47 | 只看该作者
在添加共享对象库后,录制时又产生新的对象!!!
对象库中保存了两个页面中的所有对象:产品添加和用户登陆。
在对产品添加进行录制时,尽然又在用户登陆下建立了产品添加页面下的对象??脚本变成了:
browser().page("产品添加")..........而预期的应该是:browser().page("用户登陆")......
,,,试了同事的几台机子都是这样!!! 可以确定产品添加下有相应对象
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2007-12-19 12:14:00 | 只看该作者
原帖由 ZH_0211 于 2007-12-19 11:08 发表
也就是说,如果Browser的对象属性一致的话,就不会出现那种“Browser_编号”的情况是吗?那是不是以此类推,Page和Frame也是一样的?


Page和Frame比较特殊,QTP有专门提供另外的Option来控制
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2007-12-19 12:03:49 | 只看该作者
原帖由 ZH_0211 于 2007-12-19 11:08 发表
也就是说,如果Browser的对象属性一致的话,就不会出现那种“Browser_编号”的情况是吗?那是不是以此类推,Page和Frame也是一样的?


推论不成立,鉴定完毕~~
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2007-12-19 11:08:05 | 只看该作者

回复 6# 的帖子

也就是说,如果Browser的对象属性一致的话,就不会出现那种“Browser_编号”的情况是吗?那是不是以此类推,Page和Frame也是一样的?
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-12-18 20:54:24 | 只看该作者

回复 7# 的帖子

是的。。。不过代码帮助中都有现成的,稍微改改就可以作为自己的函数随意调用了
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-12-18 18:45:34 | 只看该作者
还有一个问题??在8.2版本是QTP可以将一个共享对象库设置为默认对象库,好象9.2的没有这个相关的设置!!!!得自己写代码加载吗?
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-12-18 17:47:30 | 只看该作者
原帖由 zhuyuancan 于 2007-12-18 17:08 发表
追问:设置了一个共享对象库,
1.里面有对象上千个,这对日后脚本的运行会有嘛问题没?
2.虽然设置了一个共享对象库,但是录制过程中还是会产生如browser(**_2)等的新对象!!


>> 1.里面有对象上千个,这对日后脚本的运行会有嘛问题没?
几千个对象,对计算机来说,是个很小儿科的的东西,你没看人家数据库都是上百万条记录的呢!
而且将对象描述集中放在对象库里统一维护,总比你将对象描述分散在几万行脚本里维护的好吧?
数据越多,就越要统一维护,越要保持简洁。

>>2.虽然设置了一个共享对象库,但是录制过程中还是会产生如browser(**_2)等的新对象!! [/quote]
browser是窗口了,你是不是有多个IE窗口打开着,或者browser(**_1)和browser(**_2)的属性不一样啊?
检查一下对象库里两个browser对象属性的差别。

你看得那帖子,人家讲的是Page/Frame对象的问题,跟你browser对象是不一样的问题。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-12-18 17:08:59 | 只看该作者
追问:设置了一个共享对象库,
1.里面有对象上千个,这对日后脚本的运行会有嘛问题没?
2.虽然设置了一个共享对象库,但是录制过程中还是会产生如browser(**_2)等的新对象!!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-7-25 16:37:58 | 只看该作者
学习了sdlkfj3
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-7-25 15:27:54 | 只看该作者

很牛x啊

真想共享工程文件看看。。感谢答复
回复 支持 反对

使用道具 举报

该用户从未签到

2#
发表于 2007-7-25 14:37:23 | 只看该作者
原帖由 jackymail 于 2007-7-25 12:06 发表
我看到你说除了主控模块,其余的都写成vbs放到函数库里面给大家共享使用。

你全部用的描述性编程?根本没有使用对象库?

你把所有的对象全部录制下来了?

你们之间所有人都在共享一个对象库?

到底 ...



>>你全部用的描述性编程?根本没有使用对象库?
  我是反对使用描述性编程的!
  对象库是QTP的精华!好好的对象库不用,把对象描述写在每行脚本里面,只会把脚本弄得乱糟糟很难看,
  而且把对象描述分散在各行脚本里,不利于统一管理,也很难维护!哪个对象变化了,在成千上万行脚本里怎么找怎么修改啊!!
  所以,尽量少用描述行编程,只有必要的时候,如遇到动态对象,才用描述性编程!

>>你把所有的对象全部录制下来了?
  不用,需要的对象才录入对象库,尽量保持对象库的简洁!
  
>>你们之间所有人都在共享一个对象库?
  每个系统每个版本对应一个对象库文件,如 NMS_1.0.tsr。2.0版本来了,就把NMS_1.0.tsr复制为NMS_2.0.tsr然后进行更新。
  这样保证被测系统和对象库文件的一一对应,然后大家都统一使用相应的对象库文件,写出来的脚本也能共用。
  要是各人用各自的对象库,写出来的脚本只能用自己的对象库,那大家的脚本就不能共用和共享了。

>>到底有多少脚本共享了?
  大部分的脚本都是共享的!我们脚本都是写成函数,函数分层,大家可以随意调用和共享。

>>还有主控模块你一般都写点什么东西?
  QTP主控模块主要负责初始化QTP运行环境、控制Case的运行、提供参数输入、保存运行结果、保存运行日志和错误保护等功能。
  QTP主控模块提供一个Excel文件,用户在里面指定要运行的Case、Case参数、使用的对象库文件、要加载的函数库文件。
  初始化QTP运行环境主要是加载函数库和对象库。
  保存运行结果也是将结果写入一个Excel文件里。

[ 本帖最后由 yabest 于 2007-7-25 14:38 编辑 ]
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-11 08:30 , Processed in 0.182434 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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