我正在尝试在虚拟机上测试应用程序(SAP GUI).我注意到,当我从我们的RFT本身启动它们时,我的脚本按预期执行,但是当在同一个虚拟机上使用Powershell从命令行启动脚本时,我遇到了同一部分的问题.
检查我们的日志得出结果,我使用该exists()方法的某些方法似乎是罪魁祸首,因为该方法需要10-20秒来决定是否存在一个物体,而不是一小部分秒.在exists()使用的数量和方法需要的额外时间之间似乎也存在相关性(我可以看到每个方法的持续时间):一个方法exists()需要10秒,一个方法有三个exists()需要超过20秒.
我的问题是:什么可能导致行为的这种意外变化,考虑到测试中的应用程序完全相同,机器完全相同,脚本完全相同.据我所知,只有启动脚本的方法不同.与此讨论相关:在两种情况下都使用相同的JVM.
即使是正确方向的指针也会非常受欢迎,因为这个问题很难让我掌握.
IDE 或命令行实际上应该没有任何区别。IDE 执行将使用 IBM JRE(与产品捆绑在一起)来执行。您是否使用相同的 IBM JRE 通过命令行执行?
contains() 的行为不应有所不同。您在 IDE/CLI 执行之间看到的行为是否一致?