当前位置: 首页 > 面试题库 >

如何在Selenium Chrome Capabilities中设置默认下载目录?

路裕
2023-03-14
问题内容

请找到以下带有镶边功能的代码。实际上,浏览器没有将文件下载到指定的路径。

private static DesiredCapabilities getChromeCapabilities() throws Exception {

    String chromePath = BrowserUtil.class.getResource("/Browserdrivers/chromedriver.exe").getPath();
    System.setProperty("webdriver.chrome.driver", chromePath);
    String downloadFilepath = "C:\\TestDownloads";
    ChromeOptions options = new ChromeOptions();
    HashMap<String, Object> chromePrefs = new HashMap<String, Object>();
    chromePrefs.put("profile.default_content_settings.popups", 0);
    chromePrefs.put("download.default_directory", downloadFilepath);
    options.setExperimentalOption("prefs", chromePrefs);
    options.addArguments("--test-type");
    options.addArguments("start-maximized", "disable-popup-blocking");

    DesiredCapabilities chromeCapabilities = DesiredCapabilities.chrome();
    setProxy(chromeCapabilities);
    chromeCapabilities.setPlatform(Platform.WINDOWS);
    chromeCapabilities.setCapability("name", MDC.get("testname"));
    chromeCapabilities.setCapability(ChromeOptions.CAPABILITY, options);
    return chromeCapabilities;
}

问题答案:

对于Chromedriver,请尝试:

String downloadFilepath = "/path/to/download";
HashMap<String, Object> chromePrefs = new HashMap<String, Object>();
chromePrefs.put("profile.default_content_settings.popups", 0);
chromePrefs.put("download.default_directory", downloadFilepath);
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("prefs", chromePrefs);
DesiredCapabilities cap = DesiredCapabilities.chrome();
cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
cap.setCapability(ChromeOptions.CAPABILITY, options);
WebDriver driver = new ChromeDriver(cap);

注意:-在Windows中,您需要使用\\作为路径,而如果您使用linux或mac,则使用//

希望这可以帮助。:)



 类似资料:
  • 我一直在处理在框架内的“下载”文件夹中下载文件。我正在使用Robot Framework,CI工具是Jenkins。 我已根据此代码配置了Base Setup Script。当我在本地执行脚本时,这可以正常工作。但是当它在Jenkins中运行时,它会给我这个错误 WebDriverException:消息:“chromeDrive”可执行文件需要在PATH中。 当我在 Jenkins 中运行它时,

  • 我有一个rails应用程序,正在运行水豚 以下是我如何在我的支持/环境中设置它。rb: 我注意到,如果我停止 然后设置默认下载目录,然而,浏览器会自动弹出,我想禁用它。 当我两者都有: 它运行headless,但未设置默认下载路径。 我有以下版本: 水豚(2.14.2) selenium webdriver(3.6.0) chromedriver辅助程序(1.1.0)

  • 问题内容: 我在同一包中有2个班级。这两个类都具有main方法。现在,我想构建一个jar文件。我想建立2个jar文件,这些文件使用不同的主要功能作为默认主要功能。 例如 如何在NetBeans IDE中进行操作? 我找到了答案。您可以在netbeans中轻松地做到这一点:1)右键单击项目>属性>运行>选择类frm并下拉列表。在netbeans中是如此简单。Netbeans摇摇欲坠! 问题答案: 在

  • 问题内容: 我在使用react-select时遇到问题。我使用redux表单,并且使我的react-select组件与redux表单兼容。这是代码: 这里是我如何渲染它: 但是问题是我的下拉菜单没有我希望的默认值。我做错了什么?有任何想法吗? 问题答案: 我猜你需要这样的东西:

  • 问题内容: 我可以在angularjs中使用默认值设置一个下拉列表, 如何使用来达到相同的效果?我胆战心惊, 但是没用。样品小提琴在这里 问题答案: 使用 为设定的默认值。 这是: 演示

  • 我正在研究bean验证,我正在寻找一种可能性来设置我自己的bean验证注释的默认组。 我有这样的东西(工作): RequiredBySecondStepValidator.class(一个实现的约束验证器) secondstep.class(bean验证组) 不幸的是,根据规范,不可能在注释中设置默认组,如下所示: