Το BrowserMob καταγράφει μόνο την κίνηση που περνά πραγματικά από τον listener του. Η εκκίνηση του proxy δίπλα σε έναν browser Selenium δεν βάζει αυτόν τον browser στη διαδρομή.

Για το τεκμηριωμένο ενσωματωμένο API 2.1.5 του BrowserMob, μια υπάρχουσα ρύθμιση Java Selenium μπορεί να χρησιμοποιήσει αυτή τη σειρά:

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

Η θύρα 0 ζητά μια διαθέσιμη θύρα. Το ClientUtil χτίζει τη ρύθμιση proxy του Selenium από αυτόν τον listener. Η καταγραφή ξεκινά πριν την πλοήγηση και ανακτάται όσο το proxy είναι ακόμη διαθέσιμο.

Το απόσπασμα προϋποθέτει ότι οι τύποι BrowserMob, HAR και Selenium του έργου είναι ήδη διαθέσιμοι. Η λεπτομερής καταγραφή σώματος αιτήματος ή απόκρισης είναι μια πρόσθετη επιλογή CaptureType. Η υποκλοπή HTTPS χρειάζεται επίσης τη δική της προβλεπόμενη ρύθμιση εμπιστοσύνης πιστοποιητικού.

Για έναν απομακρυσμένο browser Grid, διαφημίστε μια διεύθυνση προσβάσιμη από το μηχάνημα αυτού του browser. Μια διεύθυνση loopback στον εκτελεστή δοκιμών υποδεικνύει εκεί το loopback ενός άλλου μηχανήματος.

Αυτό καταγράφει τη ρυθμισμένη διαδρομή HTTP του browser. Δεν θεσπίζει κανόνα λειτουργικού συστήματος που μπλοκάρει κάθε άλλη εξερχόμενη σύνδεση.

Σχετικά άρθρα