t.me/atinfo_chat Telegram группа по автоматизации тестирования

Нужна помощь с basic auth при помощи Browsermob proxy, java, selenium.

browsermob-proxy
ntlm
java
selenium
chrome
Теги: #<Tag:0x00007f9c48a9d198> #<Tag:0x00007f9c48a9e1d8> #<Tag:0x00007f9c48a9be88> #<Tag:0x00007f9c48a9bd20> #<Tag:0x00007f9c48a9b910>

(Дмитрий Сизов) #1

Пробую обойти basic auth при помощи Browsermob proxy.
код на котором проверяю работоспособность

public class ProxyTest {
    @Test
    public void autoBasicAuthorization() throws Exception {
        System.setProperty("webdriver.chrome.driver","src\\test\\resources\\chromedriver.exe");

        BrowserMobProxy proxyServer = new BrowserMobProxyServer();
        proxyServer.start();

        System.out.println(proxyServer.getPort());

        proxyServer.autoAuthorization("", "admin", "password", AuthType.BASIC);
        Proxy seleniumProxy = ClientUtil.createSeleniumProxy(proxyServer);
        ChromeOptions options = new ChromeOptions();
        System.out.println(seleniumProxy);
        options.setCapability(CapabilityType.PROXY, seleniumProxy);

        WebDriver driver = new ChromeDriver(options);

        driver.get("https://somewebsite.com");

        driver.quit();

        proxyServer.stop();
    }
}

в консоли порт пишется один, а бразуер запускается на другом, пример вывода консоли

65398
Proxy(manual, http=DESKTOP-G6:65398, ssl=DESKTOP-G6:65398)
Starting ChromeDriver 2.46.628402 (536cd7adbad73a3783fdc2cab92ab2ba7ec361e1) on port 26776
Only local connections are allowed.
Please protect ports used by ChromeDriver and related test frameworks to prevent access by malicious code.
апр 04, 2019 10:39:48 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: OSS

(Дмитрий Сизов) #2

Оказалось порт ни при чем, видимо не работает вот это

        proxyServer.autoAuthorization("", "admin", "password", AuthType.BASIC);

заменил на

        proxyServer.addHeader("Authorization", "Basic YWRtaW46aWNvbmpvYjEyJQ==");

basic auth прохожу, только сертификат теперь недействительный