C# RemoteWebDriver имеет прокси для своих команд
Задайте System.Net.WebProxy в HttpCommandExecutor перед созданием удалённого сеанса Selenium.
Когда тестовому процессу на C# нужен прямой прокси для доступа к удалённой службе Selenium, подключите System.Net.WebProxy к его исполнителю HTTP-команд:
using System;
using System.Net;
using OpenQA.Selenium.Remote;
var commandProxy = new WebProxy("http://proxy.example:8080")
{
Credentials = proxyCredentials
};
var executor = new HttpCommandExecutor(
remoteWebDriverUri, TimeSpan.FromSeconds(60))
{
Proxy = commandProxy
};
using var driver = new RemoteWebDriver(
executor, browserOptions.ToCapabilities());
proxyCredentials — это предназначенная учётная запись прокси, remoteWebDriverUri — настроенный URI удалённой службы, а browserOptions содержит существующие возможности браузера и поставщика. Не указывайте Credentials, если посредник не требует аутентификации. В этом случае список HTTP-прокси предоставляет кандидатов, если удалённая служба WebDriver общедоступна и разрешён доступ через публичные прокси.
Задайте свойство исполнителя до создания RemoteWebDriver. Создание драйвера запускает обмен удалённого сеанса; исполнитель создаёт свой базовый HTTP-клиент при первой необходимости. Более позднее изменение свойства не является надёжным способом заменить обработчик, который этот клиент уже использует.
Этот маршрут передаёт команды WebDriver от запускающего процесса к удалённой службе. Собственный веб-трафик браузера — это отдельное соединение. Если ему тоже нужен прокси, настройте его через возможности браузера, используя конечную точку, доступную с машины браузера.
Учётные данные прокси аутентифицируются у посредника. Учётные данные удалённой службы по-прежнему относятся к поддерживаемой поставщиком конфигурации входа или возможностей.