Webradiogroup处理方式解析
上一篇 /
下一篇 2011-08-05 11:28:54
/ 个人分类:qtp
--renquande
--20110805
昨天遇到了一个关于webradiogroup的问题,有多个radio,要选择其中的一个,由于人知道怎么选择,而录制的时候是死的,所以决定把人工的选择时的思考步骤给程序化,达到智能的效果:
Webradiogroup如图所示,radio都放在webtable里面,人工选择的步骤如下:
1、 先看第二列第二行,如果值和我们输入的车型代码一致则,选择,否则,看该列的下一行
2、 如果一致,则选择该行的radio
3、 点确定按钮
人工步骤模型的程序转换:
1、 把车辆代码放到变量中
2、 获取webtable的总行数
3、 循环获取webtale第二行开始,第二列的所有值
4、 那第二列的值和车辆代码变量比较
5、 如果相等则选择该行
6、 点确定按钮
代码部分:
‘把车辆代码放入变量carcode
carcode = DataTable("车型代码", dtGlobalSheet)
With Browser("name:=车辆信息","title:=车辆信息").Page("name:=车辆信息","title:=车辆信息")
‘获取webtable的总行数,放入rows
rows = .WebTable("html tag:=TABLE","name:=carNo").GetROProperty("rows")
‘从webtable的第二列开始,故i=2
For i = 2 to rows
‘把第二行开始的第二列的值放入xx中
xx = .WebTable("html tag:=TABLE","name:=carNo").GetCellData(i,2)
‘判断如果两者一致,则选择该行,点确定按钮
If xx = carcode Then
‘i-2的含义,因为webtable从2开始,而webradiogroup的select取值从0开始,故取i-2
.WebRadioGroup("name:=carNo","type:=radio").Select i-2
.WebButton("name:=确定").Click
End If
Next
End With
本身这个逻辑并不复杂,关键在于录制的时候,这个页面放到了“被续保的保单”Browser下面,导致会放的时候屡屡报错,所以需要手工添加其Browser,保证Browser\page都是正确的(这应该是qtp工具本身的一个BUG)
说明:该代码的实现使用描述性编程,所以运行的时候不依赖对象库,可以直接拷到相关的脚本中直接运行
收藏
举报
TAG: