3

当我Augmenter使用 Selenium 的 2.25 版本创建(见下文)时,它曾经可以正常工作。对于 2.26 和 2.27,我收到以下错误。您能否建议 2.26+ 版本需要哪些额外功能才能让事情再次正常运行?

我收到以下错误:

java.lang.IllegalAccessException-->Class org.openqa.selenium.remote.Augmenter$CompoundHandler 无法访问带有修饰符“protected”的类 org.openqa.selenium.firefox.FirefoxDriver 的成员启动 Firefox webdriver 时捕获异常

相关代码:

WebDriver driver = new FirefoxDriver();
WebDriver augmentedDriver = new Augmenter().augment(driver);
4

1 回答 1

0

由于较新版本的 selenium Agumenter 仅适用于 RemoteWebDriver。

它从来没有真正支持过,但现在也不起作用

您需要 Agumenter 的哪些功能?即截图,你可以直接制作 FriefoxDriver:

((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);

初始化混合集线器/本地驱动程序:

if (useHub) {
   ...
   webDriver = new RemoteWebDriver(hubURL, desiredCapabilities);
   webDriver = new Augmenter().augment(webDriver);
} else {
   switch(webDriverType) {
      case Type.FIREFOX:
         webDriver = new FirefoxDriver();
      }
}

然后正常使用 webDriver

于 2014-02-14T11:25:15.543 回答