Selenium JavaScript: prepojenie príkazov vzdialeného WebDrivera cez proxy
Použite usingWebDriverProxy pre príkazy JavaScript WebDriver odosielané na vzdialený koncový bod Selenium.
Skript Selenium v JavaScripte odosiela príkazy WebDriver vzdialenému serveru skôr, než sa prehliadač na tomto serveri môže kamkoľvek presunúť. Ak musí spojenie príkazov prechádzať cez HTTP proxy, nakonfigurujte proxy WebDrivera v Builderi:
const { Builder, Browser } = require("selenium-webdriver");
const driver = await new Builder()
.forBrowser(Browser.CHROME)
.usingServer(gridUrl)
.usingWebDriverProxy("http://proxy.example.net:8080")
.build();gridUrl je skutočný server Selenium alebo hostovaný koncový bod WebDriver. Pre verejne dostupný koncový bod, kde je táto trasa povolená, poskytuje zoznam HTTP proxy kandidátov pre usingWebDriverProxy. Spustite fragment v asynchrónnej funkcii CommonJS. Po skončení testovacej relácie ukončite driver.
usingWebDriverProxy riadi HTTP spojenia javascriptového prepojenia. Nenastavuje možnosť proxy v Chrome ani argument na spustenie Chrome.
Ak aj prevádzka prehliadača potrebuje sprostredkovateľa, zadajte zamýšľané možnosti Chrome zvlášť. Tento prehliadač beží na vzdialenom počítači, takže jeho koncový bod proxy musí byť tam dostupný. Adresa loopback na počítači skriptu nie je automaticky službou loopback dostupnou vzdialenému prehliadaču.
Určite, či zlyhanie nastáva pri vytváraní relácie WebDriver alebo pri navigácii na webovej stránke. Obe zlyhania môžu zahŕňať rôznych sieťových klientov a rôzne zásady proxy.