51Testing软件测试论坛

标题: 网页中对话框识别问题,大侠帮帮忙吧,折磨好几天了 [打印本页]

作者: lifreshman0626    时间: 2012-1-20 17:07
标题: 网页中对话框识别问题,大侠帮帮忙吧,折磨好几天了
B/S结果图书管理系统网站,在录制时候,点击“借书”后,会弹出“确定借书”对话框。回放的时候,到这就会报错。
录制后的语句是Browser("网络办公系统").Dialog("Dialog").WinButton("WinButton").Click  对应下面的截图,到这句的时候就报错
[attach]77141[/attach][attach]77142[/attach]
图2 是添加对象时报的错
作者: yyc2164708    时间: 2012-1-29 09:35
本帖最后由 yyc2164708 于 2012-1-29 09:38 编辑

试试呢?
  1. ' ***************************************************************************
  2. ' 函数名称: Dialog_Operates
  3. ' 函数说明: 处理打开的Dialog窗口
  4. ' 参数说明:
  5. '           (1).strText: Dialog_Operates提示信息内容
  6. '           (2).intButton: 点击提示信息框上按钮 : 0-确定按钮、1-取消按钮、2-关闭按钮
  7. ' 返回结果: 无
  8. ' 调用举例: Call Dialog_Operates ("删除成功",2)
  9. ' **************************************************************************
  10. Function Dialog_Operates(strText,intButton)
  11.         Dim strText_ : strText_ = ""
  12.         '定义一个Dialog窗体对象
  13.         Set DialogDesc = Description.Create()
  14.         DialogDesc("micClass").Value = "Dialog"
  15.         '获取桌面上所有的Dialog对象
  16.         Set DialogList = Desktop.ChildObjects(DialogDesc)
  17.         '判断当前桌面上是否存在Dialog
  18.         For i=0 to DialogList.count-1
  19.                 Set objStatic= Description.Create()
  20.                 objStatic("micClass").Value = "Static"
  21.                 Set objList_1 = DialogList(i).ChildObjects(objStatic)
  22.                 '获取Dialog消息内容,判断是否是需要操作的Dialog
  23.                 strText_ = objList_1(1).GetROProperty("Text")
  24.                 If strText_ = strText Then
  25.                         Set objWinButton = Description.Create()
  26.                         objWinButton("micClass").Value = "WinButton"
  27.                         Set objList_2 = DialogList(i).ChildObjects(objWinButton)
  28.                         Select Case intButton
  29.                                 Case 0
  30.                                         objList_2(0).click
  31.                                 Case 1
  32.                                         If objList_2.count > 1 Then
  33.                                                 objList_2(1).click
  34.                                 Case 2
  35.                                         DialogList(i).close
  36.                         End Select
  37.                         Exit for
  38.                 End If
  39.         Next
  40. End Function
复制代码

作者: lifreshman0626    时间: 2012-1-29 12:17
回复 2# yyc2164708


    运行到这的时候:
        '获取桌面上所有的Dialog对象

        Set DialogList = Desktop.ChildObjects(DialogDesc)”

提示缺少Desktop对象,我的截图的那个网页弹出的对话框属于dialog吗???
作者: yyc2164708    时间: 2012-1-30 09:05
回复 3# lifreshman0626

如果可以的话,把你的代码发至我的邮箱,我可以帮你看下哦
邮箱:Yan_yongcheng@163.com
作者: kimiraphael    时间: 2012-1-30 17:40
其实简单点的话就是录制一个敲击回车的动作




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2