QTP 处理webtable中的数据

来源:百度文库 编辑:神马文学网 时间:2024/04/28 21:12:06
分类:QTP测试工具

1.如何遍历WebTable的所有单元格?

QTP中的WebTable测试对象提供了RowCount和ColumnCount,可用于遍历WebTable中的所有单元格。

再配合GetCellData、ChildItem等,就可以对WebTable中的每一个单元格中的对象进行操作。

下面的例子获取到WebTable每一个单元格中的链接对象:

Set w_WebTable = Browser(XXX).Page(XXX).WebTable(XXX)
For I = 1 To w_WebTable.RowCount
For J =1 To w_WebTable.ColumnCount(1) '注意这块的写法是数字1,而不是字母“i”
Set oCellLink = w_WebTable.ChildItem(I, J, "Link" , 0 )
Next
Next

2.使用GetRowWithCellText方法找到webtable中某一元素所在的行.

如: iRow=obj_table.GetRowWithCellText("helloWorld",1,1)

意为:从表格第一行、第一列开始遍历,返回表格种helloWorld所在的行数,并将值付给iRow.

综合实例:

脚 本 内 容: Call CloseWeb() '此函数意为在执行操作之前关闭所有浏览器窗口
systemutil.Run"iexplore.exe","http://192.168.8.9:8000/xzfw/","","",3
Browser("电子政务").Page("电子政务").WebEdit("user_code").Set "admin"
Browser("电子政务").Page("电子政务").WebEdit("user_pass").SetSecure "49eaded9cd8e47be2ec7d372"
Browser("电子政务").Page("电子政务").Image("dl-9").Click
wait 6
Browser("电子政务").Page("::::行政审批系统::::").Link("日程安排").Click
Browser("电子政务").Page("::::行政审批系统::::").Frame("38").WebElement("新建安排").Click
call UniqueID(a) '调用此函数意为产生一个唯一的值格式为:"安排041916548"
Browser("电子政务").Page("::::行政审批系统::::").Frame("38_2").WebEdit("weedayPlan.title").Set ""&a
Browser("电子政务").Page("::::行政审批系统::::").Frame("38_2").WebEdit("weedayPlan.address").Set "shanghai pudong district"
Browser("电子政务").Page("::::行政审批系统::::").Frame("38_2").Image("calendar_o").Click
Browser("电子政务").Window("日期-时间选择 -- 网页对话框").Page("日期-时间选择").WebElement("20").Click
Browser("电子政务").Window("日期-时间选择 -- 网页对话框").Page("日期-时间选择").WebButton("选择").Click
Browser("电子政务").Page("::::行政审批系统::::").Frame("38_2").Image("calendar_o_2").Click
Browser("电子政务").Window("日期-时间选择 -- 网页对话框").Page("日期-时间选择").WebElement("30").Click
Browser("电子政务").Window("日期-时间选择 -- 网页对话框").Page("日期-时间选择").WebButton("选择").Click
Browser("电子政务").Page("::::行政审批系统::::").Frame("38_2").WebList("weedayPlan.importantType").Select "紧急"
Browser("电子政务").Page("::::行政审批系统::::").Frame("38_2").WebEdit("weedayPlan.content").Set "这是新建安排,务必严格执行,"
Browser("电子政务").Page("::::行政审批系统::::").Frame("38_2").WebButton("保存").Click
'new process begin
'Browser("电子政务").Page("::::行政审批系统::::").Frame("38").webtable("主题").click

Set obj_table=Browser("::::行政审批系统::::").Page("::::行政审批系统::::").Frame("38").WebTable("主题")
iRow=obj_table.GetRowWithCellText(""&a,1,1)
Set CellLink=obj_table.ChildItem(iRow,6,"Link",0)
CellLink.click
Browser("::::行政审批系统::::").Dialog("Microsoft Internet Explorer").Activate
If Browser("::::行政审批系统::::").Dialog("Microsoft Internet Explorer").Static("text:=确定要使当前安排失效吗?").Exist(1) Then
Browser("::::行政审批系统::::").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
Reporter.ReportEvent micPass,"有效性验证","默认失效Ok,安排使失效!"
else Reporter.ReportEvent micFail,"有效性验证","没有按默认取值,检查程序!"
End If
Set obj_table=Browser("::::行政审批系统::::").Page("::::行政审批系统::::").Frame("38").WebTable("主题")
iRow=obj_table.GetRowWithCellText(""&a,1,1)
Set CellLink=obj_table.ChildItem(iRow,6,"Link",0)
CellLink.click
If Browser("::::行政审批系统::::").Dialog("Microsoft Internet Explorer").Static("text:=确定要使当前安排生效吗?").Exist(1) Then
Browser("::::行政审批系统::::").Dialog("Microsoft Internet Explorer").WinButton("确定").Click
Reporter.ReportEvent micPass,"有效性验证","安排使生效OK!"
else Reporter.ReportEvent micFail,"有效性验证","没有按默认取值,检查程序!"
End If