Как скачать файл в Selenoid, используя параметры Chrome с Java - PullRequest
1 голос
/ 15 мая 2019

Я пытаюсь загрузить файл для браузера Chrome, запущенного на изображении селеноида. С chromeoptions, которые я настроил, как показано ниже, браузер открывает диалоговое окно загрузки файла на изображении, и мой тестовый случай не проходит. Я пытаюсь найти способ загрузки файлов в изображении селеноида без диалогового окна загрузки.

Все мои chromeoptions прекрасно работают на компьютерах под управлением Windows.

Ниже приведены мои chromeoptions

String path = "home" + File.separator + "selenium" + File.separator + "Downloads" + File.separator;
        System.setProperty("webdriver.chrome.driver", System.getProperty("user.dir") + File.separator + "lib" + File.separator + "chromedriver.exe");
        System.setProperty("webdriver.chrome.verboseLogging", "true");
        System.setProperty(ChromeDriverService.CHROME_DRIVER_LOG_PROPERTY,
                System.getProperty("user.dir") + File.separator + "log" + File.separator + "chrome.log");

        HashMap<String, Object> chromePrefs = new HashMap<String, Object>();
        chromePrefs.put("profile.default_content_settings.popups", 2);
        chromePrefs.put("profile.default_content_settings.javascript", 1);
        chromePrefs.put("download.default_directory", path);
        chromePrefs.put("credentials_enable_service",false);
        chromePrefs.put("download.prompt_for_download", false);
        chromePrefs.put("safebrowsing.enabled", true);

        ChromeOptions options = new ChromeOptions();
        options.setExperimentalOption("excludeSwitches", new String[] { "enable-automation" });
        options.setExperimentalOption("forceDevToolsScreenshot", true);
        options.setExperimentalOption("useAutomationExtension", false);
        options.setExperimentalOption("detach", false);
        options.setExperimentalOption("prefs", chromePrefs);

        options.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
        options.setCapability("enableVNC", true);
    //  options.setCapability("screenResolution", "1280x1224x24");

        options.addArguments("--disable-infobars"); 
        options.addArguments("--test-type"); 
        options.addArguments("--disable-extensions");
        options.addArguments("--ignore-certificate-errors");
        options.addArguments("--enable-javascript");
        options.addArguments("--start-maximized", "--window-size=1360,1020");

Ожидается - файл должен быть загружен по указанному пути. Что происходит - сценарий останавливается с диалоговым окном загрузки файла

...