У меня не получилось
Падает на получении прокси с NullPointerException
Код
void setUp(){
Configuration.timeout = 15000;
Configuration.screenshots = false;
Configuration.savePageSource = false;
Configuration.headless = false;
Configuration.proxyEnabled = true;
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability( "browserName", "chrome");
WebDriverManager.chromedriver().setup();
ChromeOptions chromeOptions = new ChromeOptions();
var chrome = new ChromeDriver(chromeOptions.merge(capabilities));
WebDriverRunner.setWebDriver(chrome);
open();
BrowserUpProxy bmp = WebDriverRunner.getSelenideProxy().getProxy();
// запоминать тело запросов (по умолчанию тело не запоминается, ибо может быть большим)
bmp.setHarCaptureTypes(CaptureType.getAllContentCaptureTypes());
// запоминать как запросы, так и ответы
bmp.enableHarCaptureTypes(CaptureType.REQUEST_CONTENT, CaptureType.RESPONSE_CONTENT);
// начинай запись!
bmp.newHar("pofig");
}```
Логи и ошибка вот такая ...
Версии ОС и софта следующие
implementation 'com.codeborne:selenide:6.4.0'
implementation 'com.codeborne:selenide-proxy:6.4.0'
+ Selenoid
Подскажите где туплю или может есть рабочий пример запуска прокси и получения от нее har файла ?
Ну конечно, вы же сами запускаете ChromeDriver (строчка “var chrome = new ChromeDriver”). Запускаете его БЕЗ прокси. И потом удивляетесь, что прокси нет.
Удалите строки var chrome = new ChromeDriver... и WebDriverRunner.setWebDriver....
Тогда селенид сам запустит браузер с прокси и другими нужными настройками.
Работает, а еще можете дать совет. Если локально запускаю тесты данные прокси собираются, а если через Selenoid, то har файл пустой. Как это можно исправить ?
Добрый день, не получилось запустить через код написанные на старом фреймверке и с использование setWebdriver()
Попробовал сделать на чистом проекте без установки remote webdriver, настройки и сразу запуск прокси.
Если запускать локально( закомментировать Configuration.remote = IP+"/wd/hub/";), то все работает четко. Но если подключить Selenoid, то появляется ошибка
unknown error: net::ERR_PROXY_CONNECTION_FAILED
Похоже что не хватает какой-то настройки, но не могу найти какой именно настройки.
Андрей подскажите где у меня косяк ?
Проблема в том, что прокси запускается на машине с тестами.
А браузер - внутри докера.
Поэтому в настройку Configuration.proxyHost нужно прописать айпишник машины с тестами.
Чтобы не хардкодить айпишник, можно попробовать такой трюк:
Configuration.proxyHost = new org.openqa.selenium.net.NetworkUtils().getNonLoopbackAddressOfThisMachine();