(2)脚本2:
'创建WSH对象 Set oWshShell = CreateObject("wscript.shell") '启动notepad记事本应用 oWshShell.Run "notepad" '循环等待记事本激活 While Not oWshShell.AppActivate("无标题 - 记事本") : Wend '提示消息框 Msgbox “suc” '释放对象 Set oWshShell = Nothing |
脚本1 执行结果如图3-43所示。
图3-43
脚本2 执行结果如图3-44所示。
图3-44
分析:
这个例子非常经典,在对比了这两脚本执行结果之后应该很明显地看到,第一个是在窗口激活之前就弹出消息框了,由于记事本挡住了,因此这里看不出。虽然已经在脚本中加入了AppActivate方法来激活记事本窗口了,但是由于脚本执行速度比激活窗口快很多倍,因此脚本执行激活窗口时,往往是还没来得及等窗口激活,就已经执行了下一句弹出消息框脚本了,就会出现不想看到的局面。但脚本2就很好地避免了这样的问题,通过循环遍历了对象的激活状态,同步窗口的激活状态,一旦窗口激活后才弹出消息框,这样的做法是最安全的。可以在图3-43中明显地看到消息弹出框在记事本前面,很明显此处的消息弹出框是在记事本窗口激活后才弹出的。
本文选自《51Testing软件测试作品系列》之九——《精通QTP——自动化测试技术领航》。
本站经人民邮电出版社和作者的授权,近期将进行部分章节的独家连载,敬请期待!
版权声明:51Testing软件测试网获人民邮电出版社和作者授权独家连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
相关阅读: