Как обработать SSL-сертификат Edge browser через browsermob-proxy в селене - PullRequest
0 голосов
/ 21 февраля 2020

Я хочу автоматизировать веб-приложение во всех браузерах. Мой код работает нормально для chrome, firefox, но когда я попробовал его на Edge, он показывает ошибку сертификата ssl. как я могу справиться с этим.пробовал так много обходных путей, но не смог его достичь.

if ((browser.equalsIgnoreCase ("Edge"))) {

            //browserName = "";
            browser = "Edge";

            //set path to Edge.exe
            System.setProperty("webdriver.edge.driver","C:\\edgedriver.exe");
            if(enableProxy == true) {
                proxy = new ProxyServer();
                proxy.setTrustAllServers(true); 

                proxy.start();
                System.out.println( proxy.getPort());
                Proxy seleniumProxy = new Proxy();
                EdgeOptions options = new EdgeOptions();
                String hostIp = Inet4Address.getLocalHost().getHostAddress();
                seleniumProxy.setHttpProxy(hostIp + ":" + proxy.getPort());
                seleniumProxy.setSslProxy(hostIp + ":" + proxy.getPort());

                seleniumProxy = ClientUtil.createSeleniumProxy(proxy);
                options.setProxy(seleniumProxy);
                options.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);

// DesiredCapabilitiesabilities = новые DesiredCapabilities (); //abilities.setCapability (CapabilityType.PROXY, прокси);

                proxy.enableHarCaptureTypes(CaptureType.REQUEST_CONTENT, CaptureType.RESPONSE_CONTENT);

                proxy.newHar();
                driver = new EdgeDriver(EdgeDriverService.createDefaultService(),options);


                //driver = new EdgeDriver(capabilities);
                driver.manage().window().maximize();
            }else {

                //create Edge instance
                driver = new EdgeDriver();
                driver.manage().window().maximize();
            }
        }

1 Ответ

0 голосов
/ 21 февраля 2020

Вы можете установить ACCEPT_SSL_CERTS в true в DesiredCapabilities:

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);

System.setProperty("webdriver.edge.driver", "C://EdgeDriver.exe");
WebDriver driver = new EdgeDriver(capabilities);
...