Firefox Quantum 57+中Selenium Actions类点击操作失效求助
关于Firefox Quantum中Selenium Actions点击失效的问题
你遇到的这个问题核心是版本兼容性不匹配,而非Firefox对Actions类的支持仍在开发阶段——后续迭代的Firefox、GeckoDriver与Selenium组合已经能稳定支持Actions操作了。
问题根源
你当前的技术栈:Selenium 3.5.0 + GeckoDriver 0.19.1 + Firefox Quantum 57+,其中GeckoDriver 0.19.1是较早的版本,而Firefox Quantum(57+)进行了架构大改版(从XUL迁移到WebExtensions),旧版GeckoDriver的Actions实现还没适配这个重大变化,因此出现点击不生效的情况。同期Chrome的WebDriver对Actions的支持已经比较成熟,所以能正常运行。
可行的解决办法
- 升级GeckoDriver版本:Firefox 57+至少需要搭配GeckoDriver 0.20.0及以上版本(建议直接升级到与你的Firefox版本匹配的最新兼容GeckoDriver,比如Firefox 57对应GeckoDriver 0.20.0,更高版本的Firefox对应更新的GeckoDriver),新版本修复了大量针对Firefox Quantum的Actions兼容性问题。
- 升级Selenium版本:将Selenium升级到3.141.59这类稳定的高版本,它对GeckoDriver的兼容性支持更完善,能更好地处理Actions操作。
- 临时替代方案:如果暂时无法升级依赖,可以尝试以下两种方式替代
Actions.click:- 直接使用WebElement的原生点击:
ele.click();(如果元素本身处于可点击状态,这种方式更稳定) - 通过JavaScriptExecutor模拟点击:
((JavascriptExecutor) driver).executeScript("arguments[0].click();", ele);
- 直接使用WebElement的原生点击:
内容的提问来源于stack exchange,提问作者Suraj Prakash
相关产品推荐
相关产品推荐

