C# RemoteWebDriver are un proxy pentru comenzile sale
Setați System.Net.WebProxy pe HttpCommandExecutor înainte de a crea sesiunea Selenium la distanță.
Când procesul de test C# are nevoie de un proxy de redirecționare pentru a ajunge la un serviciu Selenium la distanță, atașați un System.Net.WebProxy la executorul său de comenzi 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 este contul de proxy preconizat, remoteWebDriverUri este URI-ul configurat al serviciului la distanță, iar browserOptions conține capabilitățile existente ale browserului și ale furnizorului. Omiteți Credentials când intermediarul nu necesită autentificare. În acest caz, lista de proxy-uri HTTP oferă candidați dacă serviciul WebDriver la distanță este public și accesul prin proxy-uri publice este permis.
Setați proprietatea executorului înainte de a construi RemoteWebDriver. Crearea driverului începe schimbul sesiunii la distanță; executorul își creează clientul HTTP subiacent atunci când este necesar pentru prima dată. O modificare ulterioară a proprietății nu este o modalitate fiabilă de a înlocui handlerul pe care acel client îl folosește deja.
Această rută transportă comenzile WebDriver de la rulant la serviciul la distanță. Traficul web propriu al browserului este o conexiune separată. Dacă și acesta are nevoie de un proxy, configurați-l prin capabilitățile browserului folosind un endpoint accesibil de pe mașina browserului.
Credențialele proxy se autentifică la intermediar. Credențialele serviciului la distanță aparțin în continuare configurației de autentificare sau de capabilități acceptate de furnizor.