Удаленка для jenkins+selenide+selenoid+allure+docker спецов на 2-3 часа в день. 100% remote! Присоединиться к проекту

Selenium 3.4.0 + Microsoft Edge + BrowsermobProxy

java
webdriver
selenium
Теги: #<Tag:0x00007fedc3c0bf30> #<Tag:0x00007fedc3c0bdf0> #<Tag:0x00007fedc3c0bcb0>

(Vladislav Kulasov) #1

Проблемка в следующем:
Пара ишью с edge драйвером
proxy: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/5468949/
ACCEPT_SSL_CERTS: https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/9270308/
(вроде как решена)
Вот с прокси я проблему решил, работает в 1 потоке(ну edge вообще 1 открыть можно):

    private void setProxyByShell(Proxy proxy){
        String proxyString = proxy.getHttpProxy();
        String commandEnableProxy ="reg add \"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\" /v ProxyEnable /t REG_DWORD /d 00000001 /f";
        ShellHelper.executeCommand(commandEnableProxy);
        String commandSetProxy ="reg add \"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\" /v ProxyServer /d \"http://"+ proxyString+"\" /f";
        ShellHelper.executeCommand(commandSetProxy);
    }

Но вот ни как не могу заставить принять сертификат BrowsermobProxy. Может кто справился с этой проблемой?
Ругается “This site is not secure”
Сейчас делаю чтоб он кликал на проход дальше по странице, но это очень неудобно.
PS:
capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
capabilities.setCapability(CapabilityType.ACCEPT_INSECURE_CERTS, true);
делаю

PS2:PO Для Edge Site Not Secure

public class EdgeSiteNotSecure {
    private static final By details = By.id("moreInformationDropdownLink");
    private static final By continueLink = By.id("overridelink");

    public static void continueSiteNotSecure(WebDriver driver){
        List<WebElement> detailsElements =  driver.findElements(details);
        if (detailsElements.size() > 0){
            warn("Found page 'Site Not Secure'");
            detailsElements.get(0).click();
            new WebDriverWait(driver, 5).until(ExpectedConditions.visibilityOf(driver.findElement(continueLink))).click();
        }
    }
}