在Selenium启动的Chrome中没有打开PDF

时间:2015-04-30 06:14:23

标签: java google-chrome pdf selenium selenium-chromedriver

我正在使用Selenium和ChromeDriver 2.43.1以及最新的Chrome(在询问排名时版本42.0.2311.135)。我的Web应用程序生成PDF。它使用正确的MIME类型发送,并且还可以在Chrome PDF查看器中正确打开。但是,当我尝试使用由WebDriver启动的Chrome中的Selenium打开PDF时,它会被下载。

我认为可能是Selenium或WebDriver用来启动Chrome的一些设置。

我已经尝试了settings a few switches,但还没有任何效果。我的代码:

DesiredCapabilities capabilities = DesiredCapabilities.chrome();
// Add ChromeDriver-specific capabilities through ChromeOptions.
ChromeOptions options = new ChromeOptions();
options.addArguments("--please-make-it-work"); // not a real switch
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
webDriver = new ChromeDriver(capabilities);
webDriver.get(url);

我真正需要的是启动浏览器" normal"模式。它不需要任何配置文件设置,只需要打开PDF的默认设置。

1 个答案:

答案 0 :(得分:0)

问题是由最近--test-type切换行为的变化引起的。它是described in the ChromeDriver issue tracker

解决方法是禁用此开关。这是我的代码改变了:

// Add ChromeDriver-specific capabilities through ChromeOptions.
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("excludeSwitches", Arrays.asList("test-type"));
webDriver = new ChromeDriver(options);
webDriver.get(url);