为什么我的关键字
Push
[Arguments] ${element}
Wait Until Element Is Visible ${element}
Click Element ${element}
并不总是有效?我有一个测试文件,我使用它大约50次。只有一个元素
<button id="x" ...>
总是与Push关键字一起使用。推送元素应该为屏幕生成额外的文本字段。也许每秒按钮x都能正常工作。当按下按钮x失败时,我可以在屏幕截图中看到按钮被挂起,但按下按钮没有产生额外的文本字段。错误消息是在页面中找不到元素y,并且在截图中元素y不在页面中。在错误情况下,测试等待元素20秒。
如何解决这个问题?或者我们的应用程序有错误?当我手动运行我们的应用程序时,功能永远不会出现问题。
关键字等到元素可见和等到元素可点击之间有什么区别?
我也试过Wait Until Element Is Clickable,并且测试并不总是有效(在页面中找不到元素y)。
答案 0 :(得分:1)
此问题可能与某些事情有关,具体取决于页面的加载方式。我自己的工作提出了一些建议:
将硒速度设置为大约0.01s左右,看看它是否可以提高执行速度。我注意到,在chrome中,有时执行起来有些快,而且会导致测试不稳定。
如果您的页面包含JavaScript,则最好等到它们完成为止。为此,我使用了一个我们自己开发的库,该库扩展了我将在下面链接的seleniumLibrary。它还包括“ Wait for and Click ...”(等待并单击...)之类的关键字,从而使上面的脚本编写起来更加简洁。
https://github.com/Accruent/zoomba
请注意,它需要python 3,但是如果您回过头来,可以得到一个python 2版本,但不再进行维护。