51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3445|回复: 12
打印 上一主题 下一主题

[原创] 这段是精通QTP里面的,但我运行的时候出现错误了,请帮忙看下

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-8-27 15:24:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
'打开网站页面
SystemUtil.Run "C:\Program Files\Internet Explorer\IEXPLORE.EXE",_
"http://www.baidu.com/gaoji/advanced.html"
'描述对象 -- WebEdit
Set all_oEdit = Description.Create
all_oEdit("micClass").value = "WebEdit"
'为WebEdit找父对象和祖父对象,并将所有对象“包装”在一起
Set all_oEdits = Browser("micClass:=Browser").Page("micClass:=Page")._
ChildObjects(all_oEdit)                                   运行到这句错误了
'遍历页面中的WebEdit对象,找到一个就输入一串指定的字符串
For i = 0 to all_oEdits.count - 1
    Set oEdit = all_oEdits.item(i)
    oEdit.Set "QTP自动化测试技术领航"
Next
'最后记得释放所有设置的对象
Set oEdit = Nothing
Set all_oEdits = Nothing
Set all_oEdit = Nothing
感觉没错啊,但放到QTP里面就提示错误了
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2012-8-27 15:57:06 | 只看该作者
本帖最后由 xjwldlover 于 2012-8-27 16:10 编辑

Set oEdit = all_oEdits.item(i)
你确定这里应该有个.item,而不是“all_oEdits(i) ”?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2012-8-27 16:06:27 | 只看该作者
回复 2# xjwldlover


    缺少了item  连运行都不行了,直接提示  oEdit = all_oEdits.(i)  缺少标识符
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2012-8-27 16:10:31 | 只看该作者
点也去掉,我发错了~
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2012-8-27 16:19:37 | 只看该作者
Set all_oEdits = Browser("micClass:=Browser").Page("micClass:=Page")._
ChildObjects(all_oEdit)   
运行后提示错误在这句上
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2012-8-27 16:22:25 | 只看该作者
换行的写法是 " "+"_",你在下划线前面少了个空格~
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2012-8-27 16:32:18 | 只看该作者
Set all_oEdits = Browser("micClass:=Browser").Page("micClass:=Page").ChildObjects(all_oEdit)   

写成这样也一样提示错误
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2012-8-27 16:40:32 | 只看该作者
  1. '打开网站页面
  2. SystemUtil.Run "C:\Program Files\Internet Explorer\IEXPLORE.EXE", _
  3. "http://www.baidu.com/gaoji/advanced.html"
  4. '描述对象 -- WebEdit
  5. Set all_oEdit = Description.Create
  6. all_oEdit("micClass").value = "WebEdit"
  7. '为WebEdit找父对象和祖父对象,并将所有对象“包装”在一起
  8. Set all_oEdits = Browser("micClass:=Browser").Page("micClass:=Page"). _
  9. ChildObjects(all_oEdit)
  10. '遍历页面中的WebEdit对象,找到一个就输入一串指定的字符串
  11. For i = 0 to all_oEdits.count - 1
  12. Set oEdit = all_oEdits.item(i)
  13. oEdit.Set "QTP自动化测试技术领航"
  14. Next
  15. '最后记得释放所有设置的对象
  16. Set oEdit = Nothing
  17. Set all_oEdits = Nothing
  18. Set all_oEdit = Nothing
复制代码


试试
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2012-8-27 16:59:04 | 只看该作者
回复 8# xjwldlover

我用的就是这段代码,就是我前面说的 在那句出错了,你使用这段没出错吗
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2012-8-27 17:12:50 | 只看该作者
①换行下划线前面加空格,或者你不换行试试
②ChildObjects(all_oEdit)                                   '注释掉-运行到这句错误了

ps,Set oEdit = all_oEdits.item(i) 和 Set oEdit = all_oEdits(i)
效果一样
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2012-8-27 17:31:07 | 只看该作者
回复 10# xjwldlover


首先非常感谢
后面那句注释是因为我来提问才加上去的,并且用红色字显示
换行的话,在QTP中我都没用了,因为一行写的下

我记得以前用这段代码的时候是可以实现的,现在自己把这段运用到项目中时,不能实现了,
就回头把这段学习时用到的代码再运行一次,结果不行了。郁闷啊
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2012-8-28 11:03:09 | 只看该作者
回复 1# louqqson008

直接复制粘贴1楼代码是可以正确运行的,出错可能跟环境配置、设置等相关。楼主需要提供错误截图,才能尝试定位问题
回复 支持 反对

使用道具 举报

  • TA的每日心情
    慵懒
    2015-3-28 13:08
  • 签到天数: 6 天

    连续签到: 6 天

    [LV.2]测试排长

    13#
    发表于 2013-6-6 16:40:14 | 只看该作者
    我找了一下,在赵老师的博客提示下终于找到原因了,应该是在“record and run setting”中设置成了其他网站了,只要改成“record and run test on any browser”就没问题了,小小的问题研究了一下午才弄明白,希望对其他和我一样的朋友们有用,少走点冤枉路!
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-15 19:50 , Processed in 0.069204 second(s), 26 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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