51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4552|回复: 24
打印 上一主题 下一主题

[原创] 大家帮忙看一下子吧,还差一点了(几位大哥进来看呀,有图)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-2-6 10:37:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位老大帮忙看下,我现在就差一点问题
我想实现参数化用户名和密码登录一个网站,没验证码的
为什么在输入正确的用户名和密码登录成功后,没有点击退出登录的按钮呢?
我的思路:这个IF就是判断点击登录按钮时看是否存在错误窗口页面,如果存在就点击错误窗口中的确定按钮,
如果不存在就是登录成功,就点击退出系统,以实现再次登录,求各位大哥帮忙看下子

********************
Browser("尘封办公OA系统").Page("尘封办公OA系统").WebEdit("admin").Set DataTable("name", dtGlobalSheet)
Browser("尘封办公OA系统").Page("尘封办公OA系统").WebEdit("password").SetSecure DataTable("paw", dtGlobalSheet)
Browser("尘封办公OA系统").Page("尘封办公OA系统").WebButton("管理登陆").Click
If Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").Exist Then
        Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
Else
        Browser("尘封办公OA系统").Page("尘封办公OA系统_2").Frame("top").Link("退出系统").Click
End If
Browser("尘封办公OA系统").Close

********************

[ 本帖最后由 423799223 于 2007-2-6 11:50 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-2-6 11:00:53 | 只看该作者
我昨天晚上看到这个帖子后自己也弄了个简单的登陆注销的流程

遇的情况和你一样
当成功后 他就一直停在IF处  没有执行"退出"这一步  直到运行下一组数据

但是运行结束后在结果里面查看
又能看到所有的数据都已经运行结束 并且都按照要求将结果正确输出了....

纳闷中也...
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-2-6 11:06:22 | 只看该作者
这样试一下,
if   登陆成功的窗口存在的话
      then  点退出
else
      激活一下错误窗口               '如果错误提示窗口就多种错误类型就同一个窗口的话
     Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
end if
看看这样行不。还有一个问题 是不是登陆成功后的窗口和你原来的窗口是一个窗体啊。如果是一个窗体的话,可能就不能用是否存在登陆成功的窗口存在来判断了,因为始终是同一个窗体。

[ 本帖最后由 wssgily 于 2007-2-6 11:13 编辑 ]
回复 支持 反对

使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2007-2-6 11:14:04 | 只看该作者
    请发个相关的图片(包括你测试的系统的图片和dtGlobalSheet的图片)上来看看,另外请把下面的四行代码先注释掉看看,系统能否点击“退出系统”按钮:
    If Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").Exist Then
       Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
    Else
    End If

    如果还不行,在 下面一行的后面增加 Wait 语句试试看:
      Browser("尘封办公OA系统").Page("尘封办公OA系统").WebButton("管理登陆").Click
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2007-2-6 11:14:55 | 只看该作者
    原帖由 walker1020 于 2007-2-6 11:14 发表
    请发个相关的图片(包括你测试的系统的图片和dtGlobalSheet的图片)上来看看,另外请把下面的四行代码先注释掉看看,系统能否点击“退出系统”按钮:
    If Browser("尘封办公OA系统").Dialog("Mi ...

    还是版主解决问题的思路强啊.学习啊.
    沟通能力和分析能力还要提高.学习啊.

    [ 本帖最后由 wssgily 于 2007-2-6 11:16 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2007-2-6 11:27:35 | 只看该作者
    3楼的大哥,我照你说的去做
    结果一运行时,第一次密码是错误的,QTP就不动了,以下是我的代码
    *********
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebEdit("admin").Set DataTable("name", dtGlobalSheet)
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebEdit("password").SetSecure DataTable("paw", dtGlobalSheet)
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebButton("管理登陆").Click
    If  Browser("尘封办公OA系统").Page("尘封办公OA系统_2").Exist   Then
            Browser("尘封办公OA系统").Page("尘封办公OA系统_2").Frame("top").Link("退出系统").Click
    Else
            Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").Activate
            Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
    End If
    Browser("尘封办公OA系统").Close
    *********
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2007-2-6 11:29:52 | 只看该作者
    原帖由 423799223 于 2007-2-6 11:27 发表
    3楼的大哥,我照你说的去做
    结果一运行时,第一次密码是错误的,QTP就不动了,以下是我的代码
    *********
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebEdit("admin" ...

    按4楼的版主说的方法试试.然后把错误提示发上来看看

    [ 本帖最后由 wssgily 于 2007-2-6 11:31 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2007-2-6 11:33:34 | 只看该作者
    一运行QTP,第一次密码是错误的就不动了
    ********
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebEdit("admin").Set DataTable("name", dtGlobalSheet)
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebEdit("password").SetSecure DataTable("paw", dtGlobalSheet)
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebButton("管理登陆").Click
    'If Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").Exist Then
    '       Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
    'Else
            Browser("尘封办公OA系统").Page("尘封办公OA系统_2").Frame("top").Link("退出系统").Click
    'End If
    Browser("尘封办公OA系统").Close
    ********

    [ 本帖最后由 423799223 于 2007-2-6 11:37 编辑 ]

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
     楼主| 发表于 2007-2-6 11:39:44 | 只看该作者
    这是我参数的用户名和密码:
    Name:
    1
    admin1
    admin2

    Paw:
    45c7df41dfde45e7
    admin
    admin3

    用户名为Admin1到admin9之间都可以,密码都是admin
    我的第一个和第三个都是错误的,只有第二个是正确的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2007-2-6 14:21:02 | 只看该作者
    我按我们说的逻辑在flight上试了一下,没有问题的.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
     楼主| 发表于 2007-2-6 14:36:13 | 只看该作者
    我是按照你说的试了下把图也贴上来了
    我想让你们帮我分析下是哪段代码有问题
    现在是都不是运行完所有的用户名
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2007-2-6 14:38:23 | 只看该作者
    QTP不动是什么意思?多等会儿也没报错?

    建议lz先在if 和else 后面加个msgbox看看程序是不是按照你要求的执行的,然后再具体找下原因sdlkfj2
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
     楼主| 发表于 2007-2-6 14:39:18 | 只看该作者
    就是程序在IF判断那里不动了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2007-2-6 15:37:40 | 只看该作者
    恩,可能QTP在执行判断页面是否Exist 的时候,需要一定的时间.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
     楼主| 发表于 2007-2-6 15:38:25 | 只看该作者
    那怎么解决这个问题呢
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2007-2-6 15:42:48 | 只看该作者
    除了验证页面是否存在外?还能有什么信息可以抓来判断的吗?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
     楼主| 发表于 2007-2-6 15:45:04 | 只看该作者
    我本来是考虑到可以验证存在的页面的其它控件属性
    但是我不知道怎么弄
    就这一个重复登录页面的功能我弄了两天没弄出来

    班主大哥教下吧
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2007-2-6 15:45:56 | 只看该作者
    多加上几个wait 和 msgbox 试试
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
     楼主| 发表于 2007-2-6 15:55:53 | 只看该作者
    我加了一个Wait(10)就可以了,如果这样的话,那验证一个用户名就得浪费几十秒
    我有5000个用户名,不是比手工还慢,请问楼上的大哥们有没有别的方法解决此事
    现在这个被测试的页面在我本机上的,应该没有速度问题
    ****************
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebEdit("admin").Set DataTable("name", dtGlobalSheet)
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebEdit("password").SetSecure DataTable("paw", dtGlobalSheet)
    Browser("尘封办公OA系统").Page("尘封办公OA系统").WebButton("管理登陆").Click
            If Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").Exist Then
            Wait(10)
            Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").Activate
            Browser("尘封办公OA系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click

    Else
            Browser("尘封办公OA系统").Page("尘封办公OA系统_2").Frame("top").Link("退出系统").Click
    End If
    Browser("尘封办公OA系统").Close
    ****************
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2007-2-6 21:10:39 | 只看该作者
    原帖由 xiaonan 于 2007-2-6 15:37 发表
    恩,可能QTP在执行判断页面是否Exist 的时候,需要一定的时间.


    赞成xiaonan的说法
    我也运行到这一步的时候等了很久
    但最后都执行通过了

    你如果要用5000个用户名来获取那些有效的话....我想这个方法在时效上不好
    呵呵
    不过可以在夜间执行 
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-10-6 00:36 , Processed in 0.119844 second(s), 29 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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