Selenium JavaScript: fes passar per un proxy la connexió d'ordres del WebDriver remot
Utilitzeu usingWebDriverProxy per a les ordres JavaScript de WebDriver enviades a un punt final de Selenium remot.
Un script de Selenium en JavaScript envia ordres de WebDriver al servidor remot abans que el navegador d'aquell servidor pugui navegar enlloc. Si la connexió d'ordres ha de travessar un proxy HTTP, configureu el proxy de WebDriver del Builder:
const { Builder, Browser } = require("selenium-webdriver");
const driver = await new Builder()
.forBrowser(Browser.CHROME)
.usingServer(gridUrl)
.usingWebDriverProxy("http://proxy.example.net:8080")
.build();gridUrl és el servidor Selenium real o el punt final de WebDriver allotjat. Per a un punt final accessible públicament on aquesta ruta estigui permesa, la llista de proxys HTTP proporciona candidats per a usingWebDriverProxy. Executeu el fragment dins d'una funció async de CommonJS. Tanqueu el driver quan acabi la sessió de prova.
usingWebDriverProxy controla les connexions HTTP de l'enllaç JavaScript. No estableix la capacitat de proxy del Chrome ni cap argument d'inici del Chrome.
Si el trànsit del navegador també necessita un intermediari, proporcioneu les opcions de Chrome previstes per separat. Aquest navegador s'executa a la màquina remota, així que el seu punt final de proxy ha de ser accessible allà. Una adreça de loopback a la màquina de l'script no és automàticament un servei de loopback disponible per al navegador remot.
Identifiqueu si la fallada es produeix en crear la sessió de WebDriver o en navegar per un lloc web. Les dues fallades poden implicar clients de xarxa i polítiques de proxy diferents.