Testing 如何确定浏览器是否已从HP UFT 12挂起

Testing 如何确定浏览器是否已从HP UFT 12挂起,testing,vbscript,automation,qtp,hp-uft,Testing,Vbscript,Automation,Qtp,Hp Uft,我正在用HP UFT 12编写一系列测试集自动化套件。问题是我们需要知道浏览器何时/是否被挂起,以防止UFT也挂起或抛出错误消息并等待用户响应。问题是,如果测试运行,那么直到第二天早上,没有人能够响应它。如果可能的话,我们希望记录错误并继续下一次测试迭代。问题在于,似乎无法检测浏览器是否已挂起 示例:所以我有这个测试脚本。它检查对象并在浏览器窗口上执行一些操作。问题在于,如果浏览器上的某个项目不存在,可能不是完全失败,只是无法执行该项目的操作。因此,简单地检查对象是否存在并不是答案,除了简单地检

我正在用HP UFT 12编写一系列测试集自动化套件。问题是我们需要知道浏览器何时/是否被挂起,以防止UFT也挂起或抛出错误消息并等待用户响应。问题是,如果测试运行,那么直到第二天早上,没有人能够响应它。如果可能的话,我们希望记录错误并继续下一次测试迭代。问题在于,似乎无法检测浏览器是否已挂起

示例:所以我有这个测试脚本。它检查对象并在浏览器窗口上执行一些操作。问题在于,如果浏览器上的某个项目不存在,可能不是完全失败,只是无法执行该项目的操作。因此,简单地检查对象是否存在并不是答案,除了简单地检查对象是否存在之外,并不保证它可能存在,而是被隐藏或移出屏幕。(任何在QTP/UFT中编写代码的人都会知道)

假设我正在运行这个测试。当测试执行时,我控制它正在驱动的浏览器并输入URL:www.crashie8.com,这会立即使浏览器崩溃,模拟挂起。现在是事情变得有趣的时候了

QTP/UFT应该能够处理这个问题。如果我保持代码不变,UFT最终将抛出一条错误消息,如上所述,这对我没有帮助

我可以在每个函数/测试脚本的开头添加一行“On Error Resume Next”,但这会立即挂起UFT,然后一切都挂起,这只是我桌面上的一个大ole流量堆积

执行诸如“错误退出时”或“错误退出时”或“错误退出时”或“错误退出时”或“错误退出时”之类的操作都会给编译时错误提供“无效语法”

也许我缺少了一些在检查点或恢复场景中我不知道或不理解的功能

编辑:解决方案:进入脚本设置->运行并设置选项:“运行会话期间发生错误时:停止运行”。运行结果将显示错误,表明识别浏览器时出现故障

不能完全工作。虽然选项“Stop Run”确实会停止运行,但即使对象被错误识别,它也会停止运行,但是,当发生这种简单错误时,脚本应该能够继续。因此,将选项设置为“继续执行下一步”将解决继续执行小错误的问题,但在浏览器挂起时仍将挂起UFT/QTP。另外,“继续下一个动作迭代”选项也有同样的问题。所以似乎没有中间立场,也没有任何代码可以解决这个问题

我认为目前唯一可能的解决方案是选项“Stop Run”,尽管它会一路踢出去,而且根本没有办法继续,而且所有其他的continue选项也同样失败,而且没有编码解决方案,这非常令人恼火。因为一个语法错误根本不应该是一个错误,所以On Error ExitAction甚至不允许保存?!还有其他人开发的选项吗

编辑:我猜“停跑”也不是每次都有效。一定有更好的解决办法!有人吗


发现UFT/QTP崩溃的可能原因是IE插件。但是不能禁用IE插件,因为如果没有它,UFT/QTP将无法针对IE进行测试。所以我们又一次陷入了困境!说真的,惠普有没有人想过这件事

解决方案:进入脚本设置->运行并设置选项:“运行会话期间发生错误时:停止运行”。运行结果将显示错误,表明识别浏览器时出现故障。如果iexplorer.exe进程树被终止,则UFT将恢复。因此,这是唯一的解决方案,虽然不是一个很好的解决方案,但它实际上更像是一个解决方案,而不是一个真正的解决方案


“上面的选项是当UFT提示某些错误时,但在崩溃时它不会提示任何错误”

您如何运行此测试集?您是说
bHomeManager
加载项导致IE崩溃?@Motti:我直接从UFT内部运行测试。按F5键。它正在加载Excel工作簿文件,读取该文件并运行外部操作。外部操作打开另一个电子表格,并在浏览器上执行操作。在我控制浏览器并将其重定向到crashie8页面之前,它一直运行良好。然后浏览器和UFT都会无限期地挂起。@Admdew:不,我是说BHOManager正在导致UFT挂起,因为浏览器已挂起。我建议您与HP支持部门联系
crashie8