【问题标题】:Enable java plugin in Firefox on a selenium server running on a Ubuntu machine在 Ubuntu 机器上运行的 selenium 服务器上的 Firefox 中启用 java 插件
【发布时间】:2015-04-06 03:46:09
【问题描述】:

我设置了一个 selenium 服务器以在 ubuntu 机器上远程运行。我的测试是用 Java 编写的,看起来像这样:

(...)
// setup the WebDrive
DesiredCapabilities dc = DesiredCapabilities.firefox();
dc.setCapability(FirefoxDriver.PROFILE, setupBrowser());
mDriver = new RemoteWebDriver(new URL("http://MY-SERVER-IP:4444/wd/hub"), dc);
(...)

private FirefoxProfile setupBrowser() {
    FirefoxProfile fp = new FirefoxProfile();
    fp.setAcceptUntrustedCertificates(true);
    fp.setAssumeUntrustedCertificateIssuer(false);
    fp.setPreference("browser.download.folderList",2);//browser dir
    fp.setPreference("browser.download.dir", mExtractsDir);
    fp.setPreference("browser.helperApps.neverAsk.saveToDisk","text/plain");
    fp.setPreference("browser.helperApps.neverAsk.openFile","text/plain");
    fp.setPreference("plugin.default.state", 2);
    fp.setPreference("plugin.state.java", 2);
    fp.setPreference("security.enable_java", true);
    fp.setPreference("browser.helperApps.alwaysAsk.force", false);
    fp.setPreference("browser.download.manager.alertOnEXEOpen", false);
    fp.setPreference("browser.download.manager.focusWhenStarting", false);
    fp.setPreference("browser.download.manager.useWindow", false);
    fp.setPreference("browser.download.manager.showAlertOnComplete", false);
    fp.setPreference("browser.download.manager.closeWhenDone", false);
    return fp;
}
(...)

然后,我通过执行以下命令在 MY-SERVER-IP:4444 中运行 Ubuntu Linux 的远程机器上启动了一个 Selenium 服务器:

$ Xvfb :0 -screen 0 1024x768x24 2>&1 >xvfb.log &
$ export DISPLAY=:0
$ nohup xvfb-run java -jar selenium-server-standalone-2.45.0.jar > selenium.log &

问题: 我的测试代码正在加载的网站需要 java 插件,但它没有加载。如何加载java插件?我知道它没有加载,因为我使用 wdriver.get 指向官方 java 测试网站并使用以下代码截取浏览器的屏幕截图,可以看到 java 测试插件没有被加载:

Augmenter augmenter = new Augmenter(); 
TakesScreenshot ts = (TakesScreenshot) augmenter.augment(mDriver);
File srcFile = ts.getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(srcFile, new File("/tmp/firefoxstopped.png"));

问题: 在这种情况下,如何在 Firefox 中启用 java 插件?

【问题讨论】:

  • 没有确切的url,是java插件...

标签: java firefox selenium xvfb


【解决方案1】:

记得阅读关于嵌入在 HTML 中的 Java 小程序。 你能分享你的HTML代码吗? 你是如何嵌入插件的?

navigator.plugins可以看到浏览器支持的插件

类似 Java 插件的 NPAPI 即将被弃用。

您可以编译支持Java的XULRunner或Firefox等浏览器,并使用JavaScript加载jar文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-31
    • 2012-03-21
    • 2023-03-27
    • 1970-01-01
    • 2017-01-13
    • 1970-01-01
    • 2021-05-26
    • 2019-12-04
    相关资源
    最近更新 更多