将webdriver
2.46与firefox
41.0.1一起使用就可以了。现在我将webdriver
和firefox
升级为2.53和46.0。许多测试脚本因更新的测试脚本而失败,但是那些测试脚本使用旧版本成功运行。
有人面临这个问题吗?任何想法?
答案 0 :(得分:0)
我们遇到了同样的问题。 (selenium 2.53和Firefox 46.0)看来,对于版本2.52和2.51,selenium纠正了重叠(见下文)。但没有这个更新,Firefox有更多的灵活性。随着最新的更新,它变得更加脆弱。
正如您在此处所见:
https://github.com/SeleniumHQ/selenium/blob/master/dotnet/CHANGELOG
2.52: 更新了Firefox驱动程序以包含禁用重叠的功能 元素检查。这包括一个新的常量名称 能力。
2.51:更新了Firefox驱动程序,其中包含用于单击的修复程序 重叠的元素。符合项目支持政策 Firefox,此驱动程序已经过Firefox 44(当前版本)的测试 发布),43(紧接在先发布),38(当前ESR发布), 和31(紧接ESR发布之前)。
他们更新Firefox驱动程序并使他更脆弱,并使用户体验尽可能真实(因为用户无法点击他当时看不到的东西)。
之前有版本2.47和firefox 40,和你一样,很多测试都因新版本而失败。
解决方案:
确保滚动到页面以查看要单击或验证的元素。如果元素位于页面底部且元素位于另一个元素下,请尝试隐藏对象。
使用selenium包中包含的 JavascriptExecutor 按照此处所示进行操作: https://www.seleniumeasy.com/selenium-tutorials/scrolling-web-page-with-selenium-webdriver-using-java
希望有所帮助