TA的每日心情 | 开心 2024-10-4 10:34 |
---|
签到天数: 1208 天 连续签到: 1 天 [LV.10]测试总司令
|
本帖最后由 赵佳乐SMILE 于 2013-5-6 16:36 编辑
这两天在研究几个问题
虽然研究出来了 不过感觉有些凌乱
因为我没怎么用过描述性编程 也没接触过实际项目
请问,描述性编程有什么规范?
oWebElements 就是很多行
和o2WebElements 就是一行
其实我觉得写的挺恶心的 后来自己都乱了
请指点指点我的代码 写些改进意见,谢谢
- 'msgbox Browser("奶粉 - 商品搜索 - 京东").Page("奶粉 - 商品搜索 - 京东").WebElement("去购物车结算").GetROProperty("innertext")
- Dim oWebElements,oDesc
- Set oDesc=description.Create()
- oDesc("micClass").value="WebElement"
- oDesc("html tag").value="span"
- oDesc("class").value="p-price"
- set oWebElements= Browser("奶粉 - 商品搜索 - 京东").Page("奶粉 - 商品搜索 - 京东").ChildObjects(oDesc)
- oCount=oWebElements.count()
- Dim tempObj
- Dim MyString, MyArray, Msg
- Dim deleteIndex
- deleteIndex=-1
- For i=0 To oCount-1
- Set tempObj = oWebElements.Item(i)
- sliptString=tempObj.GetROProperty("innertext")
- intPrice=between(sliptString,"¥","×")
- intNums=between(sliptString,"×","")
- intTotal=intTotal+(intPrice*intNums)
- If (intTotal>1000) and (deleteIndex=-1)Then
- deleteIndex=i
- End If
- Next
- msgbox "有"& oCount &"种商品"
- Dim o2WebElements,o2Desc
- Set o2Desc=description.Create()
- o2Desc("micClass").value="WebElement"
- o2Desc("html tag").value="div"
- o2Desc("class").value="smb ar"
- set o2WebElements= Browser("奶粉 - 商品搜索 - 京东").Page("奶粉 - 商品搜索 - 京东").ChildObjects(o2Desc)
- o2Count=o2WebElements.count()
- For i=0 To o2Count-1
- Set tempObj = o2WebElements.Item(i)
- sliptString=tempObj.GetROProperty("innertext")
- Next
- actPrice=between(sliptString,"¥ ","去")
- If FormatNumber(intTotal,2)=FormatNumber(actPrice,2) Then
- Reporter.ReportEvent micPass, "共计相等", "共计价格为:"& actPrice
- Else
- Reporter.ReportEvent micFail, "共计不相等", "共计价格为:"& actPrice &"各商品价格之和为:"& intTotal
- End If
- If deleteIndex>=0Then
- For j=deleteIndex To oCount-1
- Browser("奶粉 - 商品搜索 - 京东").Page("奶粉 - 商品搜索 - 京东").Link("name:=删除","index:=" & j).Click
- Next
- End If
-
- '得到两个字符串中间的字符串。
- '例如:
- 'text="人民币300元",tBefore="人民币",tAfter="元"
- '使用between(text,tBefore,tAfter)得到300.
- Public Function between(words,wordBefore,wordAfter)
- t1=InStr(words,wordBefore)
- If t1=0 Then
- between=words
- Else
- L1=Len(wordBefore)
- wordsRight=Right(words,Len(words)-t1-L1+1)
- t2=InStr(wordsRight,wordAfter)
- If t2=0 Then
- wordAfter=""
- End If
- If wordAfter="" Then
- t2=Len(wordsRight)+1
- Else
- t2=InStr(wordsRight,wordAfter)
- End If
- needWord=Left(wordsRight,t2-1)
- between=needWord
- End If
- End Function
复制代码 |
|