51Testing软件测试论坛

标题: 写了一段脚本,请大家指教 [打印本页]

作者: linwenyan    时间: 2008-6-18 19:34
标题: 写了一段脚本,请大家指教
[attach]42913[/attach]
Option Explicit
Dim PageSizeSel_Count,PageSizeSel_Index,CusCount ,PageSizeSel, Page_Remainder,PageMax,Page,CusValue,PageValue

Browser("Browser").Page("订单/收费管理").Image("新建订单").Click
PageSizeSel_Value()
Browser("Browser").Page("新建订单(选择顾客)").WebList("pageSizeSel").Select "#" & PageSizeSel_Index
Browser("Browser").Page("新建订单(选择顾客)").Image("查询").Click
Browser("Browser").Page("新建订单(选择顾客)").Output CheckPoint("顾客查询结果") '将查询结果总的件数输出到DataTable的Cus_SearchResult中
Page_Value()

Browser("Browser").Page("新建订单(选择顾客)").WebRadioGroup("custRadio").Select "100035"

Browser("Browser").Page("新建订单(选择顾客)").Image("选择商品").Click
Browser("Browser").Page("新建订单(选择商品)").Image("购买").Click
Browser("Browser").Page("新建订单(选择商品)").Image("选择送货地/礼品包装").Click
Browser("Browser").Page("新建订单(选择送货地/礼品)").Image("结算").Click
Browser("Browser").Page("新建订单(结算/送货时间指定)").Image("登录(确认画面)").Click
Browser("Browser").Page("新建订单(结算/送货时间指定)").Image("登录(确定)").Click
Browser("Browser").Page("新建订单(结算/送货时间指定)").Image("返回").Click

'===============================================================================================
'随机获取每页显示件数下拉菜单的值
Sub PageSizeSel_Value()
PageSizeSel_Count = Browser("Browser").Page("新建订单(选择顾客)").WebList("pageSizeSel").GetTOProperty("items count")        
Print "PageSizeSel_Count :"&" "&PageSizeSel_Count&chr(13)&chr(10)
Randomize
PageSizeSel_Index=Int (rnd * PageSizeSel_Count )
Print "PageSizeSel_Index:"&" "&PageSizeSel_Index&chr(13)&chr(10)
End Sub
'===============================================================================================
'随机点击查询结果的某一页
Sub Page_Value()
        CusCount = DataTable("Cus_SearchResult", dtLocalSheet) '查询结果总的件数
        Print "CusCount:"&" "&CusCount&chr(13)&chr(10)

        PageSizeSel=Browser("Browser").Page("新建订单(选择顾客)").WebList("pageSizeSel").GetROProperty("value") ‘每页显示的件数
        Print " PageSizeSel:"&" "& PageSizeSel&chr(13)&chr(10)
       
         CusValue=CInt(CusCount)
         PageValue=CInt(PageSizeSel)

         '获取查询结果显示的总页数       
         If CusValue > PageValue Then
               
           Page_Remainder =Int(CusValue Mod PageValue)
           If  Page_Remainder<>0 Then
               PageMax=Int(CusValue/PageValue)+1
           else PageMax=Int(CusValue/PageValue)
           End If
            Randomize
           Page=Int((PageMax * Rnd)+1 )
           Print "Page:"&"   "&Page&chr(13)&chr(10)

           If page <> 1  Then
          
              While not Browser("Browser").Page("新建订单(选择顾客)").Link("text:="&Page).Exist(2)  
                      Browser("Browser").Page("新建订单(选择顾客)").Link("后一页").Click
              Wend
            
                  
              If Browser("Browser").Page("新建订单(选择顾客)").Link("text:="&Page).Exist(2) Then
                Browser("Browser").Page("新建订单(选择顾客)").Link("text:="&Page).Click
              End If
                               
           End If               

        end if

End Sub

'===============================================================================================

1.查询结果的数量无法输出到DataTable中(在前一次录的脚本中是可以的,但是重新录了以后就无法输出了),有哪些原因会导致这种情况出现呢?
2.这个脚本还有其它错误或写的不够完善的地方吗,请指教,谢谢!


[ 本帖最后由 linwenyan 于 2008-6-19 10:46 编辑 ]
作者: rayblue    时间: 2008-6-19 09:33
测的是什么东西?要实现什么功能?不要一上来就贴一堆代码好伐,稍微描述一下
作者: linwenyan    时间: 2008-6-19 10:20
已经找到原因了
因为一开始插入text output时对象是这样的:[attach]42918[/attach]
[attach]42923[/attach]
所以当查询结果无分页显示时是可以输出到DataTable的,
但是当查询结果分页显示时[[attach]42917[/attach]
根据原来的text after值就找不到符合条件的文本了
现在把text after的值改为“件”就没问题了
[attach]42924[/attach]

听起来是很简单的问题,但是昨天就是想不明白,呵呵。

[ 本帖最后由 linwenyan 于 2008-6-19 10:24 编辑 ]




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