Protractor 如何修复突然出现警报故障的量角器
我有一个项目已经运行了很长时间了。 最近(几周)系统测试失败 经过大量调查,我们得出结论,量角器无法识别并关闭警报 以前工作的代码Protractor 如何修复突然出现警报故障的量角器,protractor,Protractor,我有一个项目已经运行了很长时间了。 最近(几周)系统测试失败 经过大量调查,我们得出结论,量角器无法识别并关闭警报 以前工作的代码 exports.removeFaq = function( index ){ console.log('deleting item at',index); exports.getContent(index).$( '[ng-click="removeFAQ($index)"]').click(); browser.sleep(2000);
exports.removeFaq = function( index ){
console.log('deleting item at',index);
exports.getContent(index).$( '[ng-click="removeFAQ($index)"]').click();
browser.sleep(2000);
browser.switchTo().alert().accept();
return browser.sleep(2000);
};
正在抛出错误:
WebDriverError: unknown error: cannot determine loading status
from unexpected alert open
(Session info: chrome=52.0.2743.116)
(Driver info: chromedriver=2.21.371461 (633e689b520b25f3e264a2ede6b74ccc23cb636a),platform=Linux 4.2.0-38-generic x86_64) (WARNING: The server did not provide any stacktrace information)
和(使用元素浏览器):
我们试过了
-等待
而不是睡觉。
-长时间睡眠
-忽略角度
似乎没有什么能起到任何作用
我怎样才能解决这个问题 这几天我们都遇到了同样的问题。看来我们在chromedriver 2.21。我更新到了最新版本(),似乎已经解决了这个问题 命令
webdriver manager update--chrome
对我不起作用,因此我不得不下载zip并将其解压缩到selenium目录。在量角器下
注:有一个新的量角器主版本和更新版本。因此,更新量角器也可以解决这个问题
对于量角器版本3.x您还可以使用正确的版本修改文件
node\u modules/dragrator/config.json
,然后运行webdriver-manager-update
对于量角器版本4.x您应该改为修改文件
/node\u modules/dragrator/node\u modules/webdriver manager/config.json
我们如何确定2000ms的睡眠时间足够好呢?正是出于这个原因,测试中不建议睡眠。相反,您可以使用适当的等待和轮询来获取警报。通过这种方式,您将知道,在某个约定的超时之后,警报从未出现,测试理所当然地失败
//wait maximum up to lets 5s before giving up
browser.wait(protractor.ExpectedConditions.alertIsPresent(), 5000);
browser.switchTo().alert().accept();
我在问题中提到我试过。。这没用,听起来像是解决办法。我会试试这个,让你知道。
//wait maximum up to lets 5s before giving up
browser.wait(protractor.ExpectedConditions.alertIsPresent(), 5000);
browser.switchTo().alert().accept();