BrowserMob només enregistra el trànsit que passa realment pel seu listener. Iniciar el proxy al costat d'un navegador Selenium no posa aquest navegador a la ruta.

Per a l'API incrustada 2.1.5 documentada de BrowserMob, una configuració Java Selenium existent pot fer servir aquest ordre:

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();
}

El port 0 demana un port disponible. ClientUtil construeix la configuració de proxy de Selenium a partir d'aquest listener. La captura comença abans de la navegació i es recupera mentre el proxy encara és disponible.

El fragment assumeix que els tipus BrowserMob, HAR i Selenium del projecte ja estan disponibles. La captura detallada del cos de petició o resposta és una elecció addicional de CaptureType. La intercepció HTTPS també necessita el seu dispositiu previst de confiança en el certificat.

Per a un navegador Grid remot, anuncia una adreça accessible des de la màquina d'aquest navegador. Una adreça de loopback a l'executor de proves hi identifica el loopback d'una altra màquina.

Això captura la ruta HTTP configurada del navegador. No estableix cap regla del sistema operatiu que bloquegi qualsevol altra connexió sortint.

Articles relacionats