Selenium Webdriver Java:启动带有扩展程序的Chrome浏览器和我的配置

时间:2017-09-15 12:45:53

标签: java selenium

抱歉我的英语不好。 我对webdriver + chrome +扩展有疑问。 我需要测试100个站点的加载时间,有或没有像adblock这样的扩展名。 我用Java编程。 问题是: 当我添加扩展名whit .crx时,使用:

ChromeOptions options = new ChromeOptions();
options.addExtensions(new File("/path/to/extension.crx"));
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
ChromeDriver driver = new ChromeDriver(capabilities);

Chrome以“清晰”的adblock配置开始。

我需要最大限制配置,我手动在Chrome中配置。

如何使用我的配置启动带扩展名的新chrome实例?

2 个答案:

答案 0 :(得分:1)

这是我的新代码:

System.setProperty("webdriver.chrome.driver", "C:\\Users\\P\\Desktop\\progetto tesi\\chromedriver.exe");
            ChromeOptions options = new ChromeOptions();
            options.addArguments("user-data-dir=C:\\Users\\P\\AppData\\Local\\Google\\Chrome\\User Data");
            DesiredCapabilities capabilities = new DesiredCapabilities();
            capabilities.setCapability(ChromeOptions.CAPABILITY, options);

            driver = new ChromeDriver(capabilities);
            driver.manage().deleteAllCookies();
            driver.manage().window().maximize();
            driver.manage().timeouts().implicitlyWait(1000, TimeUnit.SECONDS);// Aspetta 30 secondi prima di catturare un eccezione.
            driver.manage().timeouts().pageLoadTimeout(1000, TimeUnit.SECONDS);

答案 1 :(得分:0)

您可以使用整个个人资料启动Chrome。以下示例适用于Windows。您需要在路径中放置自己的用户名。在linux中只需改变用户数据的路径。

ChromeOptions options = new ChromeOptions();
options.addArguments("user-data-dir=C:/Users/YOUR_USERNAME/AppData/Local/Google/Chrome/User Data");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
ChromeDriver driver = new ChromeDriver(capabilities);