Selenium نیویگیشن سے پہلے BrowserMob HAR کیپچر شروع کریں
BrowserMob کو براؤزر کے راستے میں رکھیں، نیویگیشن سے پہلے HAR کیپچر شروع کریں اور پراکسی بند کرنے سے پہلے کیپچر حاصل کریں۔
BrowserMob صرف وہی ٹریفک ریکارڈ کرتا ہے جو واقعی اس کے listener سے گزرتی ہے۔ Selenium براؤزر کے ساتھ پراکسی شروع کرنا اس براؤزر کو راستے پر نہیں رکھتا۔
BrowserMob کے دستاویزی 2.1.5 ایمبیڈڈ API کے لیے، موجودہ 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 اس listener سے Selenium پراکسی سیٹنگ بناتا ہے۔ کیپچر نیویگیشن سے پہلے شروع ہوتا ہے اور پراکسی کے ابھی دستیاب رہتے ہی لیا جاتا ہے۔
یہ حصہ فرض کرتا ہے کہ پروجیکٹ کی BrowserMob، HAR اور Selenium اقسام پہلے سے دستیاب ہیں۔ درخواست یا جواب کے باڈی کی تفصیلی کیپچر ایک اضافی CaptureType انتخاب ہے۔ HTTPS مداخلت کے لیے بھی اس کا مطلوبہ سرٹیفکیٹ اعتماد کا انتظام درکار ہے۔
دور دراز Grid براؤزر کے لیے، ایسا پتہ اعلان کریں جو اس براؤزر کی مشین سے قابل رسائی ہو۔ ٹیسٹ رنر پر loopback پتہ وہاں کسی دوسری مشین کے loopback کی نشاندہی کرتا ہے۔
یہ براؤزر کے کنفیگر شدہ HTTP راستے کو کیپچر کرتا ہے۔ یہ ہر دوسرے باہر جانے والے کنکشن کو روکنے والا آپریٹنگ سسٹم قاعدہ قائم نہیں کرتا۔