BrowserMob registrerer berre trafikk som faktisk går gjennom listeneren. Å starte proxyen ved sida av ein Selenium-nettlesar set ikkje den nettlesaren på ruta.

For den dokumenterte innebygde 2.1.5-API-en til BrowserMob kan eit eksisterande Java Selenium-oppsett bruke denne rekkjefølgja:

BrowserMobProxy proxy = new BrowserMobProxyServer();
proxy.start(0);
try {
    ChromeOptions options = new ChromeOptions();
    options.setProxy(ClientUtil.createSeleniumProxy(proxy));
    WebDriver driver = new ChromeDriver(options);
    try {
        proxy.newHar("example-page");
        driver.get("http://www.example.com/");
        Har capture = proxy.getHar();
        capture.writeTo(new java.io.File("page.har"));
    } finally {
        driver.quit();
    }
} finally {
    proxy.stop();
}

Port 0 ber om ein ledig port. ClientUtil byggjer Selenium-proxyinnstillinga frå den listeneren. Opptaket startar før navigasjonen og vert henta medan proxyen framleis er tilgjengeleg.

Utdraget føreset at BrowserMob-, HAR- og Selenium-typane til prosjektet alt er tilgjengelege. Detaljert opptak av førespurnads- eller svarteksten er eit ekstra CaptureType-val. HTTPS-avlytting treng òg si tiltenkte sertifikattillitsordning.

For ein ekstern Grid-nettlesar, annonser ei adresse som er nåbar frå maskina til den nettlesaren. Ei loopback-adresse på testkøyraren viser der til loopbacken til ei anna maskin.

Dette tek opp den konfigurerte HTTP-ruta til nettlesaren. Det set ikkje opp ei operativsystemregel som blokkerer kvar einaste annan utgåande tilkopling.

Relaterte artiklar