Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java WebDriverManager依赖项是否具有可用于覆盖默认浏览器下载位置的实现?_Java_Maven_Selenium Webdriver_Webdriver Manager_Webdrivermanager Java - Fatal编程技术网

Java WebDriverManager依赖项是否具有可用于覆盖默认浏览器下载位置的实现?

Java WebDriverManager依赖项是否具有可用于覆盖默认浏览器下载位置的实现?,java,maven,selenium-webdriver,webdriver-manager,webdrivermanager-java,Java,Maven,Selenium Webdriver,Webdriver Manager,Webdrivermanager Java,我使用WebDriverManager.chromedriver().setup()用于在我的selenium测试中获取chrome属性。它很好用。我试图通过更改chrome browser的默认下载位置来下载文件,因为我想将文件下载到我的java项目类路径,而不是本地计算机,但我不确定WebDriverManager是否有这样的实现。目前,我正在尝试以下内容: WebDriverManager.chromedriver().setup(); String downloadDir

我使用
WebDriverManager.chromedriver().setup()用于在我的selenium测试中获取chrome属性。它很好用。我试图通过更改chrome browser的默认下载位置来下载文件,因为我想将文件下载到我的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);
WebDriverManager.chromedriver().setup();
String downloadDir=System.getProperty(“user.dir”);
HashMap chromePrefs=新HashMap();
chromePrefs.put(“download.default\u目录”,downloadDir);
ChromeOptions选项=新的ChromeOptions();
选项。设置实验选项(“prefs”,chromePrefs);
DesiredCapabilities=DesiredCapabilities.chrome();
上限设置能力(色度选项、能力、选项);
驱动器=新的镀铬驱动器(cap);

正如预期的那样,代码块可以工作并将文件下载到项目类路径,但我认为会有一种更干净、更短的方法来完成。我对Bonigarcia
WebDriverManager
依赖项及其一些实现做了一些研究,但没有发现任何有用的东西。是否有更好的方法实现上述功能?

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

WebDriverManager.chromedriver().targetPath("/my/custom/path").setup();

我以这种方式尝试了您的建议,但该文件仍在本地计算机中加载:
WebDriverManager.chromedriver().targetPath(System.getProperty(“user.dir”)).setup()
。我还有别的事要做吗?