【问题标题】:Unable to start operaBlink through selenium webdriver无法通过 selenium webdriver 启动operaBlink
【发布时间】:2016-04-28 19:08:09
【问题描述】:

我正在尝试使用 selenium 2.53.0 和 Opera chromium 驱动程序 _win64 (0.2.2) 启动 opera(v 36.0)。

当我尝试运行示例代码时,发生异常并且浏览器没有启动。

示例代码:

            File pathToOpera = new File("E://operadriver.exe");
            DesiredCapabilities cap = DesiredCapabilities.operaBlink();
            cap.setCapability("webdriver.opera.driver",pathToOpera);
            driver = new OperaDriver(cap);

我收到错误

java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.opera.driver system property; for more information, see https://github.com/operasoftware/operachromiumdriver. The latest version can be downloaded from https://github.com/operasoftware/operachromiumdriver/releases
at com.google.common.base.Preconditions.checkState(Preconditions.java:199)
at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:109)
at org.openqa.selenium.opera.OperaDriverService.access$0(OperaDriverService.java:1)
at org.openqa.selenium.opera.OperaDriverService$Builder.findDefaultExecutable(OperaDriverService.java:118)
at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:296)
at org.openqa.selenium.opera.OperaDriverService.createDefaultService(OperaDriverService.java:82)
at org.openqa.selenium.opera.OperaDriver.<init>(OperaDriver.java:137)

我的执行环境:win 8、64位

【问题讨论】:

  • 其他版本的opera驱动能用吗???
  • 您是否设置了 webdriver.opera.driver 系统属性??? Exception只是说没有设置。
  • @SkorpEN :我尝试了 32 位和 64 位类型,但没有使用不同的版本。在上面添加的代码中,我在desiredCapability 中设置了驱动程序路径,并尝试通过设置'System.setProperty("webdriver.opera.driver", pathToOpera)'。但这没有用。

标签: selenium selenium-webdriver webdriver remotewebdriver opera-blink


【解决方案1】:

在您的代码之前添加:

System.setProperty("webdriver.opera.driver","E://operadriver.exe");
System.setProperty("opera.binary","E://yourOperaPath.exe");

【讨论】:

  • 添加了下面的代码,但仍然出现错误。 System.setProperty("webdriver.opera.driver", "E://operadriver.exe");文件路径ToOpera = new File("C:/Users/ajesh.ks/AppData/Local/Programs/Opera/launcher.exe");DesiredCapabilities cap = DesiredCapabilities.operaBlink(); cap.setCapability("opera.binary",pathToOpera);驱动程序 = 新的 OperaDriver(cap);我收到以下错误:在端口 29660 上启动 OperaDriver 0.2.0 (ba47709ed9e35ce26dbd960fb5d75be104290d96) 只允许本地连接。 org.openqa.selenium.WebDriverException:未知错误:找不到 Opera 二进制文件
  • 这是不同的错误。现在正确设置opera.binary的系统路径。
  • 我已经卸载了我之前的安装路径(AppData)并安装到了默认位置。此外 ([link]sny.no/2011/10/capabilities) 删除了所需的功能集“opera.binary”。此外,Opera 浏览器成功启动,但 控制台窗口在后台崩溃。如果没有关闭窗口,则不会执行进一步的驱动程序命令。每次驱动程序实例化时,控制台窗口和浏览器都会打开并且控制台崩溃。
  • 检查旧版本(浏览器或驱动程序),也许最新的有一些问题。
  • 奇怪的是,opera驱动虽然添加到系统路径,却无法选择路径值。我曾在 win 8 平台上尝试过使用 Opera 启动器(v.36)和驱动程序(v.0.2.0)。但是 Console Host 窗口仍然在后台打开并崩溃。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-02-17
  • 2017-08-16
  • 2015-02-28
  • 1970-01-01
  • 1970-01-01
  • 2018-10-20
  • 2014-01-20
相关资源
最近更新 更多