我有一个安装了Mercury Quick Test Professional 9.2的虚拟机(VMware)。我有一个脚本来测试应用程序,该脚本使用Infragistics库以VB.NET编写。

如果我使用笔记本电脑(使用远程桌面)访问此虚拟机,则一切正常,脚本可以顺利完成。我的笔记本电脑运行带有Windows Classic主题的XP。

如果我使用另一台计算机(使用远程桌面)访问该虚拟机,则脚本可以正常启动,但会中途停止,而不会出现QTP错误消息,则没有任何提示。 native 运行带有Windows Classic主题的XP。

两种设置之间的区别是屏幕尺寸,笔记本电脑为1920x1280,其他机器为1280x1024。

脚本停止的步骤包括选中UltraWinGrid中的复选框。在这两种情况下,复选框本身都会显示在屏幕上。

有人以前有过这个问题吗,或者有任何想法为什么两台机器之间的行为不同?

谢谢。

最佳答案

好的。我发现了问题。实际上,脚本无声地失败了,因为编写脚本的人就是这样做的。它无法验证屏幕外的内容,因此脚本失败。

问题在于“屏幕外”的QTP定义。我有两个连接到笔记本电脑的屏幕,笔记本电脑本身的屏幕(1920x1200)和另一个屏幕(1280x1024)。我使用远程桌面连接到用于QTP的VM,它使用笔记本电脑的屏幕设置。这意味着,当我启动QTP脚本并将其移至另一个屏幕时,它不合适,因此该屏幕不再最大化,并且该对象部分不在屏幕上,因此无法找到。

修复很简单:在“远程桌面”中,使用“显示”选项卡,并将屏幕的大小设置为1280x1024,并且QTP不再有任何问题。

Voilà。

10-08 02:58