C# RemoteWebDriver har en proxy for kommandoene sine
Angi System.Net.WebProxy på HttpCommandExecutor før den eksterne Selenium-økten opprettes.
Når C#-testprosessen trenger en videresendingsproxy for å nå en ekstern Selenium-tjeneste, knytter du en System.Net.WebProxy til HTTP-kommandoeksekutøren:
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 er den tiltenkte proxykontoen, remoteWebDriverUri er den konfigurerte URI-en for den eksterne tjenesten, og browserOptions inneholder de eksisterende nettleser- og leverandørfunksjonene. Utelat Credentials når mellomleddet ikke krever autentisering. I så fall leverer HTTP-proxylisten kandidater hvis den eksterne WebDriver-tjenesten er offentlig og tilgang via offentlige proxyer er tillatt.
Angi eksekutørens egenskap før du bygger RemoteWebDriver. Oppretting av driveren starter utvekslingen av den eksterne økten; eksekutøren oppretter sin underliggende HTTP-klient når den først trengs. En senere endring av egenskapen er ikke en pålitelig måte å erstatte behandleren som den klienten allerede bruker.
Denne ruten transporterer WebDriver-kommandoer fra kjøringen til den eksterne tjenesten. Nettleserens egen nettstedstrafikk er en separat tilkobling. Hvis den også trenger en proxy, konfigurer den via nettleserfunksjonene med et endepunkt som kan nås fra nettleserens maskin.
Proxy-legitimasjonen autentiseres mot mellomleddet. Legitimasjonen for den eksterne tjenesten tilhører fortsatt leverandørens støttede innloggings- eller funksjonskonfigurasjon.