qtp自带flight程序测试问题
If Window("Flight Reservation").WinComboBox("Fly From:").GetROProperty("enabled")=true thenp=Window("Flight Reservation").WinComboBox("Fly From:").GetItemsCount '获取fly from地点的行数
flyf = int(rnd*p-1) '取随机行
Window("Flight Reservation").WinComboBox("Fly From:").Select flyf '随机选择起始点
wait(3)
capture()
f1.WriteLine("FLy from按钮"" 有效 "&" 能选择起始点!" & filename)
f1.WriteBlankLines(1)
else
f1.WriteLine("FLy from按钮"" 无效 "&"不能选择起始点!" & filename)
end If
测试订单时间,设置了6个数据,5错1对,错误数据都能正常选择,最后一次对的数据读取后出现下面错误,求高手指点一下!!!
Cannot identify the specified item of the Fly From: object. Confirm that the specified item is included in the object's item collection. 我把你的代码拷下来试了下,是可以的通过的,你检查一下你的对象库,看看是不是有问题
If Window("航班预订").WinComboBox("起点:").GetROProperty("enabled")=true then
p=Window("航班预订").WinComboBox("起点:").GetItemsCount
' flyf = int(rnd*p+1) '取随机行
flyf = int((p-0+1)*rnd+0)
Window("航班预订").WinComboBox("起点:").Select flyf '随机选择起始点
wait(3)
' capture()
' f1.WriteLine("FLy from按钮"" 有效 "&" 能选择起始点!" & filename)
' f1.WriteBlankLines(1)
' else
' f1.WriteLine("FLy from按钮"" 无效 "&"不能选择起始点!" & filename)
end If 谢谢你的帮助,应该不是对象库的问题。
6个日期数据在action中数据表直接调用,是正常的。
现在是将这部分代码写成函数,放在函数库中调用,最后一个正确日期读取后报错。Window("Flight Reservation").WinButton("新建按钮").Click
Window("Flight Reservation").WinObject("Date of Flight:").Type ReadExcelCell("C:\Users\hudemou\Desktop\test.xls","testflg",i,1)
dateflight = ReadExcelCell("C:\Users\hudemou\Desktop\test.xls","testflg",i,1) '将外部表中的数据参数化
'.****************************** 测试FLy From按钮是否有效
.****************************** 测试FLy From按钮是否有效 **************************************
If Window("Flight Reservation").WinComboBox("Fly From:").GetROProperty("enabled")=true then
p=Window("Flight Reservation").WinComboBox("Fly From:").GetItemsCount '获取fly from地点的行数
flyf = int(rnd*p-1) '取随机行
Window("Flight Reservation").WinComboBox("Fly From:").Select flyf '随机选择起始点
wait(3)
capture()
f1.WriteLine("FLy from按钮"" 有效 "&" 能选择起始点!" & filename)
f1.WriteBlankLines(1)
else
f1.WriteLine("FLy from按钮"" 无效 "&"不能选择起始点!" & filename)
end If
本帖最后由 xjwldlover 于 2012-9-23 15:59 编辑
Confirm that the specified item is included in the object's item collection. ----确认指定的选项是否包含在可选集合
**************************************
flyf = int(rnd*p-1)
应该是这一行代码有问题,你的item取值范围应该是想要在【1,6】吧,for next运行一下你的这个flyf,你看下,会有 flyf = 0,-1的情况哦,应该就会报错。
QTP存在生成随机整数的函数flyf = randomNumber(1,6),会生成【1,6】的整数,改下试试。
希望对你有帮助,如有错误,请各位指正~
ps,使用rnd函数前要初始化随机数种子Randomize,话说没初始化的话,应该6错或者6对啊,奇怪~ 谢谢,按你说的改了运行正常。
但是还是没弄明白为什么只有最后一个日期报错?
但我感觉应该和取外部表中数据的for语句有关,在action中没有for语句,继续探索中、、、、
页:
[1]