Mat*_*ard 5 javascript java selenium
我已经遇到了一些java selenium-rc测试的间歇性错误,我认为这些测试与具有ajax轮询的页面有关,并且在服务器上达到某些条件时会自动刷新.在这种情况下,我没有办法让selenium等待页面加载,所以我遇到了一堆随机的"无法访问document.body"错误.
那么,有什么方法可以让硒优雅地处理这种情况吗?如果没有,有什么方法可以检测用户是否是页面的javascript中的selenium,并禁用自动刷新?
如果它有帮助,页面中的javascript代码看起来像......
var ajax = new Ajax(url, {
update: state,
method: 'get',
onComplete: function(message) {
if (some_condition) {
window.location.replace(unescape(window.location));
}
}
});
Run Code Online (Sandbox Code Playgroud)
我的解决方案是通过将其包装在类似以下内容的内容中来禁用 JavaScript 中的刷新...
var isSeleniumActive = parent.seleniumAlert;
if (isSeleniumActive) {
alert("Selenium");
} else {
alert("Not selenium");
}
Run Code Online (Sandbox Code Playgroud)
我不确定这里的 seleniumAlert 函数是否可能永远失效,所以请注意,如果您正在这样做,您可能依赖于 selenium 的内部 selenium 实现细节。
归档时间: |
|
查看次数: |
7112 次 |
最近记录: |