0

WebDriverManager.chromedriver().setup();用于在我的硒测试中获取 chrome 属性。它工作正常。我试图通过更改 chrome 浏览器的默认下载位置来下载文件,因为我想将文件下载到我的 java 项目类路径,而不是我的本地机器,但我不确定 WebDriverManager 是否有这样的实现。目前,我正在尝试这样的事情:

    WebDriverManager.chromedriver().setup();
    String downloadDir = System.getProperty("user.dir");
    HashMap<String, Object> chromePrefs = new HashMap<String, Object>();
    chromePrefs.put("download.default_directory", downloadDir);
    ChromeOptions options = new ChromeOptions();
    options.setExperimentalOption("prefs", chromePrefs);
    DesiredCapabilities cap = DesiredCapabilities.chrome();
    cap.setCapability(ChromeOptions.CAPABILITY, options);
    driver = new ChromeDriver(cap);

正如预期的那样,代码块工作并将文件下载到项目类路径,但我认为会有一种更清洁、更短的方法来做到这一点。我已经对 BonigarciaWebDriverManager依赖项及其一些实现进行了一些研究,但找不到任何有用的东西。有没有更好的方法来实现上述目标?

4

1 回答 1

0

使用方法targetPath()改变WebDriverManager下载的驱动的默认位置:

WebDriverManager.chromedriver().targetPath("/my/custom/path").setup();
于 2019-11-13T16:48:52.413 回答