【问题标题】:Using headless JBrowserDriver with Selenium server and phpunit将无头 JBrowserDriver 与 Selenium 服务器和 phpunit 一起使用
【发布时间】:2016-05-12 13:23:06
【问题描述】:

JBrowserDriver 据说是无头 webkit,我希望将其与我的 phpunit 一起使用。我不知道如何配置它才能使用它。

我尝试使用 selenium 服务器独立并从我的单元调用它: $this->setBrowser('jBrowserDriver');

以及服务器投诉:

Caused by: org.openqa.selenium.WebDriverException: The best matching driver provider org.openqa.selenium.safari.SafariDriver can't create a new driver instance for Capabilities [{browserName=jbrowserdriver}]

我尝试设置 CLASSPATH,但这也无助于 selenium 在jbrowserdriver-0.8.2.jar 中找到类。

我该如何设置,以便 selenium 可以开始使用它,以后 phpunit 也可以使用它。我正在使用 MacOS。

【问题讨论】:

  • 您是否按照github.com/MachinePublishers/jBrowserDriver#usage 的说明进行操作?另请发布您的设置代码。
  • 这是我第一次尝试使用 phpunit+selenium。 jbrowserdriver 的用法是在 Java 中给出示例用法。但是我的设置中没有java。 phpunit.de/manual/3.7/en/selenium.html 如果您看到第一个示例单元,这就是我正在尝试的,只是我想使用 jbrowserdriver 而不是默认浏览器。这就是一切。
  • 嗨,我创建了 jBrowserDriver。您可以通过 Maven 试用 0.8.6 版吗?我没有要测试的 PHPUnit。我将浏览器名称更改为“jBrowserDriver”...请注意,并非所有配置选项都对您可用,因为我尚未实现 Capabilities
  • 谢谢。我下载了 3.8.6 jar。如何让 selenium 独立服务器(通常不识别此浏览器名称)加载 jar?这就是我挣扎的地方。 (我不是 Java 开发者;)
  • @thevikas 我又调查了一些。我需要实现 RemoteWebDriver 才能工作。完成后,您可以通过观看此问题来关注:github.com/MachinePublishers/jBrowserDriver/issues/35

标签: selenium selenium-webdriver phpunit headless


【解决方案1】:

jBrowserDriver 将在即将发布的 0.10.0 版本中支持此功能。为确保您可以加载它,请将 jBrowserDriver 及其所有依赖项放在类路径中。同样使用“jbrowserdriver”(小写)作为名称,$this->setBrowser('jbrowserdriver');

仅供参考,为了在 Selenium Server 中提供 WebDriver,在您的类路径中有一个名为 META-INF/services 的目录,其中包含一个名为 org.openqa.selenium.remote.server.DriverProvider 的文件,并且在该文件中列出了实现 @987654325 的具体类的包/类名@ 或扩展 org.openqa.selenium.remote.server.DefaultDriverProvider。 (详情请见http://docs.oracle.com/javase/7/docs/api/java/util/ServiceLoader.html)。但是,jBrowserDriver v0.10.0+ 会立即为您执行此操作。

(披露:我是该项目的所有者)

【讨论】:

    猜你喜欢
    • 2019-11-05
    • 1970-01-01
    • 1970-01-01
    • 2014-08-20
    • 2022-01-22
    • 2011-10-24
    • 2021-01-09
    • 2012-12-26
    • 2016-09-24
    相关资源
    最近更新 更多