51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1895|回复: 3
打印 上一主题 下一主题

[原创] QTP自动化测试有趣的点滴【慢慢补充】

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-11-14 19:20:34 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 xjwldlover 于 2012-11-20 15:08 编辑

用了一段QTP感觉很多地方让人感觉神奇,随手记了一下。如描述错误或者有更好的解释方式,请各位不吝赐教,先行感谢~
一、
Dictionary 对象oDict新增(声明Key)元素
    ①oDict.Add strKey,strValue
    ②oDict(strKey)
方法①很好理解,Dictionary在进行add操作时增加一个键值对,要注意判断是否oDict.Exists(strKey)已存在,否则可能会报错
②即,一旦使用oDict的strKey,比如If oDict(strKey)="123" Then:End If,则oDict(strKey)自动创建,且oDict(strKey)=""。
示例:以下示例中关键语句行被注释与不注释存在巨大差别!
  1. Dim d, msg ' Create some variables.
  2. msg = "Hello"
  3. Set d = CreateObject("Scripting.Dictionary")
  4. For i = 0 To 10
  5. If d.Exists(CStr(i)) Then
  6. WScript.Echo msg
  7. End If
  8. WScript.Echo d(i) '关键语句
  9. Next
  10. WScript.Echo d.Count
复制代码


二、
QTP之ChildObjects(desc),通过该方法无法获取页面的隐藏元素,如果要获取这些元素,必须使用micClass属性做过滤。使用QTP(HTML)的Obj.ChildObjects(oDesc)查找对象,如果oDesc不包含micClass属性,则自动忽略某些页面元素,比如Div(映射到QTP的micClass是WebElement,但不代表所有的webElement类型元素都无法通过ChildObjects得到,div是映射到webElement的HTML元素子集)

三、
Browser.Close()与Browser.Object.Quit方法。绝大多数情况下我们使用QTP内置对象的方式关闭浏览器,但假如浏览器obj的quit方法被重写后(导致browser没有立即关闭,比如需确认保存提示信息后关闭等),再使用该方法关闭浏览器,会等待10秒,原因应该是QTP内置的Close方法会等待该浏览器消失,或直到超时。这时使用后一种方法,会非常迅速。

四、ExecuteFile 与 systemUitl.Run在执行脚本时的区别
ExecuteFile :执行vbs文件,【加载】文件信息到QTP的执行环境中(脚本宿主是QTP)。即如果文件中包含test()函数,在以后可以直接使用该函数.该函数使用QTP宿主,支持Print这样的QTP内置函数+vbs,但是不支持wsh(windows脚本宿主)对象函数,比如wscript.echo。

SystemUtil.run 执行文件和运行应用(脚本宿主是windows,即wsh)。当使用它执行vbs文件时,只是【执行】,完毕后并不将文件内容保留到windows运行环境中。这里执行的含义是使用相应的脚本宿主进行执行,支持vbs+wsh,这里就使用wsh执行文件,所以如果文件中包含mercuryTimer、Print这样的QTP内置对象和函数时内容时会报错
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

4#
发表于 2012-11-15 14:36:24 | 只看该作者
留名 学习下。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2012-11-15 10:59:26 | 只看该作者
回复 2# 黑羽祭

没那么深,只是运气差遇到了~
回复 支持 反对

使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    2#
    发表于 2012-11-15 09:28:01 | 只看该作者
    本帖最后由 黑羽祭 于 2012-11-15 09:39 编辑

    LZ玩的很深啊~佩服~
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-24 17:17 , Processed in 0.071581 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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