Selenium WebDriver Safari (11.0) TypeError: Value is not a sequence

Selenium WebDriver Safari (11.0) TypeError: Value is not a sequence

我正在尝试使用 Selenium 为网站自动执行一些回归测试,但只要 WebDriver 扩展处于活动状态(禁用时不存在),Safari 11.0 中就会出现以下控制台错误:
类型错误:值不是序列
类型错误:参数不足

看起来与该用户遇到的问题相同:

但就我而言,我需要扩展才能 运行 我的测试版本。
(对吗?或者我可以以某种方式禁用它并仍然 运行 自动测试吗?)

我将 BrowserStack 用于我的测试浏览器(我可以通过使用他们的 "Live" 环境并在那里打开开发工具来查看 TypeErrors)但是需要一种方法来测试 "Automate" 中的站点而不需要扩展打破了我要测试的部分。

当我执行实际的自动化测试时,我收到错误 "Expected condition failed: waiting for presence of element",因为网站所需的部分完全无法加载。该测试适用于其他浏览器甚至旧版本的 Safari。

我是 Selenium 和 Java 的新手,所以如果有任何关于如何在 Safari 11.0 中进行此测试 运行ning 的建议,我们将不胜感激。

我的自动化测试使用 Java (Java(TM) SE Runtime Environment (build 9.0.1+11), Selenium 3.7.1 和 Eclipse。

Safari 从 Safari 10 开始为 WebDriver API 提供原生支持。来源:https://webkit.org/blog/6900/webdriver-support-in-safari-10/。 Safari 11 使用相同的原生 Safari 工具包来支持使用 Selenium 的自动化,不再需要 WebDriver 扩展。可以通过 开发 > 允许远程自动化.

为 Safari 11 启用此选项

您突出显示的错误是由于 WebDriver 扩展引起的,当 运行 Selenium 在 Safari 11 上进行测试时应该是 removed/disabled。您应该联系他们的支持团队并检查他们是否提供额外的禁用此功能。