51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3461|回复: 10
打印 上一主题 下一主题

[原创] 请大侠们介绍下CreationTime的使用办法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-8-25 17:44:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天下午在录制网站的一段脚本。
场景:当前已经打开了一个页面,这次点击页面上一个链接,打开了另外一个页面(这个页面根据链接的不同而有所不同),等我检查完完新开的页面时,想关掉它,但是录制的脚本老是自动关闭第一个页面,于是想到用CreationTime这个属性来关闭第二个窗口,我使用下面的代码: Browser("CreationTime := 1").Close来操作,但是QTP执行到这里就频频报错。

请问:在使用CreationTime有哪些要注意的呢?知道的朋友请给我们介绍一下吧,谢谢拉。呵呵
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-8-25 18:55:28 | 只看该作者
在录制期间,如果 QuickTest 不能仅基于测试对象描述唯一标识浏览器对象,它将为“CreationTime”测试对象属性分配一个值。该值指示该浏览器打开的顺序,相对于其他描述都相同的其他打开的浏览器。

在运行会话期间,如果 QuickTest 不能只是基于其测试对象描述来标识某个浏览器对象,那么,它将检查浏览器的打开顺序,然后使用“CreationTime”属性标识正确的对象。

例如,如果您在三个浏览器上录制测试或组件,这三个浏览器除了打开时间分别在 9:01 pm、9:03 pm 和 9:05 pm 之外,其他方面完全相同,那么,QuickTest 将把 CreationTime 值 0 分配给 9:01 pm 浏览器,1 分配给 9:03 pm 浏览器,2 分配给 9:05 pm 浏览器。

在 10:30 pm,当您返回测试或组件时,假定浏览器分别在 10:31 pm、10:33 pm 和 10:34 pm 打开。QuickTest 将使用 CreationTime = 0 的浏览器测试对象标识 10:31 pm 浏览器,使用 CreationTime = 1 的测试对象标识 10:33 pm 浏览器,使用 CreationTime = 2 的测试对象标识 10:34 pm 浏览器。

如果打开几个浏览器,则 CreationTime 最高的浏览器是最后一个打开的浏览器,CreationTime 最低的浏览器是第一个打开的浏览器。例如,如果打开三个或更多的浏览器,则 CreationTime = 2 的浏览器是第三个打开的浏览器。如果恰好有七个或更少的浏览器,则 CreationTime = 6 的浏览器是最后一个打开的浏览器。

例如,如果在 CreationTime = 6 的浏览器上录制步骤,并且具有该 CreationTime 值的浏览器没有打开,该步骤将在当前打开的、CreationTime 值最高的浏览器上运行。例如,如果在运行会话期间,当前打开了 CreationTime = 0 和 CreationTime = 1 的两个浏览器,那么该步骤不会由于找不到 CreationTime = 6 的浏览器而失败,相反,它会在最后一个打开的浏览器上运行,如果是这种情况,浏览器 CreationTime = 1。

注意:可能会出现这样的情况,在会话期间的特定时间,可用的 CreationTime值并不有序。例如,如果您在录制或运行会话期间打开六个浏览器,然后在该会话期间,您关闭第二个和第四个浏览器(CreationTime 值为 1 和 3),那么在会话结束时,打开的浏览器将是 CreationTime 值为 0、2、4 和 5 的浏览器
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-8-25 19:46:08 | 只看该作者
Option Explicit

SystemUtil.Run "C:\Program Files\Internet Explorer\iexplore.exe","","C:\Documents and Settings\Administrator","open"
Browser("Browser").Page("Page").Sync
Browser("Browser").Navigate "http://baidu.com/"
SystemUtil.Run "C:\Program Files\Internet Explorer\iexplore.exe","","C:\Documents and Settings\Administrator","open"
Browser("Browser_2").Page("Page").Sync
Browser("Browser_2").Navigate "http://www.google.cn/"
SystemUtil.Run "C:\Program Files\Internet Explorer\iexplore.exe","","C:\Documents and Settings\Administrator","open"
Browser("Browser_3").Page("Page").Sync
Browser("Browser_3").Navigate "http://www.sina.com.cn/"

browser("CreationTime:=1").Close
browser("CreationTime:=0").Close
browser("CreationTime:=2").Close
你自己试一下
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-8-26 11:00:32 | 只看该作者

回复 #1 wuzhuayu 的帖子

报的什么错,是can not identify the object吧
在Browser("CreationTime := 1").Close上面要加一句的:
Browser("CreationTime := 1").Page("micClass:=Page").Sync
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-8-26 11:14:38 | 只看该作者

回复 #1 wuzhuayu 的帖子

晕,我刚才又试了下,不是上面我说的原因,没有那句也行,原因倒在于
你的语句Browser("CreationTime := 1").Close冒号前面多了个空格,去掉就不报错了
这是什么道理啊,我也给搞糊涂了,我猜测可能是QTP识别时,是将冒号前面的整体当作属性进行判断,没有过滤掉空格
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    6#
    发表于 2007-8-26 13:16:04 | 只看该作者
    应该 的。Browser("CreationTime := 1").Close 是描述性编程的写法,它肯定是把 := 左边的部分作为识别对象的属性名(attribute),把右边的部分作为识别对象的属性值(value).我想也应该是语法要求吧。就象开发时 你调用一个带参数的函数, 使用的格式是 function(arg1), 而不是 function (arg1)。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
     楼主| 发表于 2007-8-26 16:10:50 | 只看该作者
    感谢各位的回帖,呵呵。真的想gzj_06 说的这样,应该可以像walk说的这样去理解这个问题,哎,真的是很倒啊。。QTP中的问题真是多而且细微,考验人的耐性!sdlkfj3
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2007-8-26 16:22:28 | 只看该作者
    大家都很强呀,我又学到了,呵呵
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2007-8-26 16:22:34 | 只看该作者
    谢谢了哈
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2007-10-22 00:48:05 | 只看该作者
    这当然不会过滤空格啊....你这是赋值比较..空格也是值..呵呵..
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2012-2-14 14:33:08 | 只看该作者
    一种DP的语法格式
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-18 08:38 , Processed in 0.095437 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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