68480850 发表于 2009-3-31 14:43:24

帮忙看下登录脚本

根据论坛中的经验与我的实际情况下的脚本,现在有一个问题:当我成功登录后,浏览器进入了系统页面,所以我加上了close语句用来关闭当前页面;但当再次进行登录操作时不能打开登录页,请问我该如何解决,有没有打开页面的语句?
代码如下:
Dim iStatus
Dim text
Dim i
i=0
While i<DataTable.GetSheet("login").GetRowCount
wait 3
Browser("信息管理系统").Page("信息管理系统").WebEdit("username").Set DataTable("username", dtLocalSheet)
Browser("信息管理系统").Page("信息管理系统").WebEdit("password").SetSecure DataTable("password", dtLocalSheet)
Browser("信息管理系统").Page("信息管理系统").WebButton("登录").Click

iStatus = DataTable("status", dtLocalSheet) '读取状态值

   '成功登录
If iStatus="" then                  
Reporter.ReportEvent micPass, "成功","登录成功"
Browser("信息管理系统").Close

end if

'用户名或密码错误   
iStatus = DataTable("status", dtLocalSheet)                                                            
ifBrowser("信息管理系统").Dialog("Microsoft Internet Explorer").Exist then
                text=Browser("信息管理系统").Dialog("Microsoft Internet Explorer").Static("Static").GetROProperty("Text")
                If text=iStatus then
                        Reporter.ReportEvent micPass, "失败",text
                else
                        Reporter.ReportEvent micFail,"异常","有错误"
                end if
         Browser("信息管理系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
end if
       
i=i+1
DataTable.GetSheet("login").SetNextRow()
wend

68480850 发表于 2009-3-31 14:46:39

datatable

username        password        status
2        49d19ad1950d474cb9b51cf19c5e5648        用户名或密码错误,请重试!
test1        123456       
test2        123456       
        123456        用户名或密码错误,请重试!
test4                用户名或密码错误,请重试!
test        1234567        用户名或密码错误,请重试!

peterz 发表于 2009-3-31 15:32:40

使用system.util打开一个IE

68480850 发表于 2009-3-31 15:39:22

回3楼

能详细点吗?我是新手。:$

68480850 发表于 2009-3-31 16:02:35

加了以后第一次运行脚本时,会出现2个窗口
SystemUtil.Run "iexplore.exe", "http://192.168.0.3:9080/Court/"
能否加个判断,判断窗口是否存在,如果不存在了在打开IE
我试着写的不知道对不对,请指点
ifBrowser("信息管理系统").Exist then
xxx
else
SystemUtil.Run "iexplore.exe", "http://192.168.0.3:9080/Court/"
end if

68480850 发表于 2009-3-31 16:20:05

哈哈,好了

:'( :D :P
全部代码:
Dim iStatus
Dim text
Dim i
i=0
While i<DataTable.GetSheet("login").GetRowCount
wait 3
ifBrowser("信息管理系统").Exist then

    Browser("信息管理系统").Page("信息管理系统").WebEdit("username").Set DataTable("username", dtLocalSheet)
    Browser("信息管理系统").Page("信息管理系统").WebEdit("password").SetSecure DataTable("password", dtLocalSheet)
    Browser("信息管理系统").Page("信息管理系统").WebButton("登录").Click
else
    SystemUtil.Run "iexplore.exe", "http://192.168.0.3:9080/Court/"
    Browser("信息管理系统").Page("信息管理系统").WebEdit("username").Set DataTable("username", dtLocalSheet)
    Browser("信息管理系统").Page("信息管理系统").WebEdit("password").SetSecure DataTable("password", dtLocalSheet)
    Browser("信息管理系统").Page("信息管理系统").WebButton("登录").Click
end if

iStatus = DataTable("status", dtLocalSheet) '读取状态值

   '成功登录
If iStatus="" then                  
Reporter.ReportEvent micPass, "成功","登录成功"
Browser("信息管理系统").Close

end if

'用户名或密码错误   
iStatus = DataTable("status", dtLocalSheet)                                                            
ifBrowser("信息管理系统").Dialog("Microsoft Internet Explorer").Exist then
                text=Browser("信息管理系统").Dialog("Microsoft Internet Explorer").Static("用户名或密码错误,请重试!").GetROProperty("Text")
                If text=iStatus then
                        Reporter.ReportEvent micPass, "失败",text
          else if text="您已连续输错三次密码,软件将自动退出" then
                          Reporter.ReportEvent micPass, "失败",text
               
                else
                                Reporter.ReportEvent micFail,"异常","有错误"
                end if
                end if
         Browser("信息管理系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
               'Browser("信息管理系统").Close
end if
       
i=i+1
DataTable.GetSheet("login").SetNextRow()
wend

68480850 发表于 2009-3-31 16:28:37

新的想法-插入检查点

现在有个新的想法,就是在登录成功后,在显示的主页中进行一些检查,如显示的用户名、显示的页面的菜单等是否是符合预期的结果。如用户1(test1),登录成功后显示的用户名为用户1,菜单有工作薄、XXX、XXX。
我的想法,首先在成功登录后不关闭窗口,加入文本检查点,页面检查点;点击页面上的退出按钮(关闭页面),继续循环。。。。
有经验的朋友请指点下,谢谢!

68480850 发表于 2009-4-1 16:42:15

最新代码,加了部分的检查点(当前用户),菜单的检查还不知道要怎么做

:'(
SystemUtil.CloseProcessByName("iexplore.exe")
Dim iStatus
Dim text
Dim i
i=0
While i<DataTable.GetSheet("login").GetRowCount
wait 3
IfBrowser("信息管理系统").Exist then
    Browser("信息管理系统").Page("信息管理系统").WebEdit("username").Set DataTable("username", dtLocalSheet)
    Browser("信息管理系统").Page("信息管理系统").WebEdit("password").SetSecure DataTable("password", dtLocalSheet)
    Browser("信息管理系统").Page("信息管理系统").WebButton("登录").Click
else
    SystemUtil.Run "iexplore.exe", "http://192.168.0.3:9080/Court/"
    Browser("信息管理系统").Page("信息管理系统").WebEdit("username").Set DataTable("username", dtLocalSheet)
    Browser("信息管理系统").Page("信息管理系统").WebEdit("password").SetSecure DataTable("password", dtLocalSheet)
    Browser("信息管理系统").Page("信息管理系统").WebButton("登录").Click
End If

iStatus = DataTable("status", dtLocalSheet) '读取状态值

   '成功登录
If iStatus="" then
      Reporter.ReportEvent micPass, "成功","登录成功"
                Browser("信息管理系统").Page("信息管理系统_2").Frame("mainFrame").Check CheckPoint("onUser")
      Browser("信息管理系统").Page("信息管理系统_2").Frame("mainFrame").WebButton("退出").Click

else

'用户名或密码错误   
iStatus = DataTable("status", dtLocalSheet)                                                            
IfBrowser("信息管理系统").Dialog("Microsoft Internet Explorer").Exist then
                text=Browser("信息管理系统").Dialog("Microsoft Internet Explorer").Static("用户名或密码错误,请重试!").GetROProperty("Text")
                If text=iStatus then
                        Reporter.ReportEvent micPass, "失败",text
          else If text="您已连续输错三次密码,软件将自动退出" then
                          Reporter.ReportEvent micPass, "失败",text
               
                else
                                Reporter.ReportEvent micFail,"异常","有错误"
                End If
                End If
         Browser("信息管理系统").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
               'Browser("信息管理系统").Close
End If
End If
       
i=i+1
DataTable.GetSheet("login").SetNextRow()

wend

dreamever 发表于 2009-4-1 17:29:49

你想检查菜单的什么内容?是否能正常显示,文字是否正确,还是要检查菜单的链接是否正确?

68480850 发表于 2009-4-1 17:43:12

回9楼

我想检查菜单项的数目、文字、链接是否正确
页: [1]
查看完整版本: 帮忙看下登录脚本