使用WaitProperty 时遇到过等待无效的问题。经过深入理解该方法后,发现是等待的属性值发生了变化导致的不能正确等待。QTP中,对象属性值发生变化,对象也就发生了变化,而WaitProperty 只适用于对象属性从默认(无)到目标值的过程,对于这种对象发生变化的情况不能达到预期等待。
WaitProperty 使用方法
object.WaitProperty (属性名称, 属性值, 超时时间(毫秒))
具体示例:
场景:表格中单元格值从val1 变为val2
html格式:
<table>
<tr><td><a>val1</a><td></tr>
</table>
QTP语句:
object.WaitProperty "innertext", "val2", 30000
此用法不能正确等到innertext的值编成val2,原因如开始所述。要正确等待可使用循环方法进行,如下:
Do
object.WaitProperty "innertext", "val2", 30000
或
Wait(1)
Loop While object.GetROProperty "innertext"<>"val2"
欢迎同僚前来指正。