51Testing软件测试论坛

标题: QTP求助 [打印本页]

作者: andyroger    时间: 2007-5-25 17:51
标题: QTP求助
测试登陆界面,准备3组数据,2组帐号密码正确,1组错误的。错误帐号密码输入后会弹出出错处理。问题是如何把正确登陆的页面跟错误的页面进行比较,可以使QTP自动识别哪一组帐号密码是错误的。我想插入检查点可以解决这个问题。但是又遇到一个问题:我设置的检查点是正常登陆时的情况,我把帐号和密码参数化,当运行到错误密码的位置时,QTP就run error:Cannot identify the object 。使下面其他的帐号密码无法继续运行。
  请高手给点提示该朝哪个方向解决这个问题。
作者: rivermen    时间: 2007-5-25 18:00
标题: 给你参考,希望对你有帮助
systemutil.Run "iexplore","www.dusee.cn"


'##############################################
'##############################################
'  此处添加外部Excel 文件驱动代码                             #
'##############################################
Dim xlapp ,wkBook,wkSheet
Dim i
Set xlapp=createobject("excel.application")
Set wkBook=xlapp.workbooks.open(environment("TestDir") & "\b.xls")
xlapp.visible=false
Set wkSheet=wkBook.workSheets("login")

For i=2 to 5
        If Browser("都视网 www.dusee.cn 首页 视频短片").Page("都视网 www.dusee.cn 首页 视频短片").Frame("Frame").Link("退出").Exist then
                Browser("都视网 www.dusee.cn 首页 视频短片").Page("都视网 www.dusee.cn 首页 视频短片").Frame("Frame").Link("退出").Click
                Browser("都视网 www.dusee.cn 首页 视频短片").Page("都视网 www.dusee.cn 首页 视频短片").Sync
    end if

       
        user=wkSheet.cells(i,1)
        passwd=wkSheet.cells(i,2)


Browser("都视网 www.dusee.cn 首页 视频短片").Page("都视网 www.dusee.cn 首页 视频短片").Frame("Frame").WebEdit("username").Set user
Browser("都视网 www.dusee.cn 首页 视频短片").Page("都视网 www.dusee.cn 首页 视频短片").Frame("Frame").WebEdit("password").Set passwd
Browser("都视网 www.dusee.cn 首页 视频短片").Page("都视网 www.dusee.cn 首页 视频短片").Frame("Frame").Image("loginIcon").Click 17,14
        If Browser("都视网 www.dusee.cn 首页 视频短片").Dialog("Microsoft Internet Explorer").Exist Then
                info= browser("都视网 www.dusee.cn 首页 视频短片").Dialog("Microsoft Internet Explorer").GetVisibleText
                Browser("都视网 www.dusee.cn 首页 视频短片").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
                reporter.ReportEvent 1,"登录状态","登录失败:" & info
                wkSheet.cells(i,3)="log in fail"
                wkSheet.cells(i,3).font.color=vbblack
                wkSheet.cells(i,3).Interior.color=vbred
        else
                reporter.ReportEvent 0,"登录状态","登录成功!"
                wkSheet.cells(i,3)="log in successfully"
                wkSheet.cells(i,3).font.color=vbblack
                wkSheet.cells(i,3).Interior.color=vbblue
        End If

'Browser("都视网 www.dusee.cn 首页 视频短片").Page("都视网 www.dusee.cn 首页 视频短片").Sync

Next

wkBook.save
wkBook.close
xlapp.quit
Set xlapp=nothing


Browser("都视网 www.dusee.cn 首页 视频短片").Page("都视网 www.dusee.cn 首页 视频短片").Sync

Browser("都视网 www.dusee.cn 首页 视频短片").Close
作者: rivermen    时间: 2007-5-25 18:05
准备了几组登陆信息。
分别把它们登陆的情况写在xls文件中,并以颜色标示,同时用reporter 给出系统报告。

另外给你一点建议,用描述性编程:

If Browser("**").Page("name:=***").Exist then
msgbox "ok"
else
msgbox "fail"
end if
作者: yangkinki    时间: 2007-5-26 16:18
在录制的时候,对于不同情况,用户名密码正确, 用户名或密码错误后的页面分开做检查点,使用IF语句,就可以解决这个问题
作者: gotolife    时间: 2007-5-27 12:35
在脚本第一行输入:           On Error Resume Next




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