2016-10-26 124 views
2

我正在通过Selenium(RobotFramework)对我的网站进行GUI自动化。我面临的问题是:如何检查JavaScript文件是否尚未加载或加载

当我的自动化脚本点击某个元素(按钮,链接等),它应该执行某些操作时,它什么都不收。这是随机发生的。当我们手动测试时,它始终都能正常工作。一个观察是,在较慢的机器/环境下,这往往会发生更多。

我怀疑这是因为一些相应的JS没有加载,或者如果有任何这样的事情称为“行动绑定”与每个元素,没有发生。

一些问题 - 有没有办法找出所有的JS调用是否结束? - 如果发生动作绑定,它是否已绑定。

如果您有其他解决方案,请分享。

+0

对于非生产用途(调试)而言,可以使用https://developer.mozilla.org/en-US/docs/Web/API/Console/time – Bloc97

+0

谢谢@ Bloc97。我正在寻找一些不需要对JS代码进行任何修改的东西。一些可以告诉我JS是否加载的东西。 –

回答

1

你知道什么是最后加载在页面上吗?这应该很容易通过您选择的浏览器中的开发者工具找到。

然后,您可以轻松使用Wait Until Keyword(有许多变体)等到最后一个项目出现,如您所期望的那样,然后继续进行测试。设置超时长度和间隔将有助于控制时间/性能的开销。

Wait Until Element Is Visible id=finalElement 10 finalElement did not appear on the screen before timeout period 

http://robotframework.org/Selenium2Library/Selenium2Library.html - 请更多的例子,选择的文件中的关键字