Quantcast
Channel: Active questions tagged selenium - Stack Overflow
Viewing all articles
Browse latest Browse all 98784

Unable to get DevTools log in Selenium Grid

$
0
0

Im using selenium 4.26 with openJdk 11.0.2. I have a selenium grid with 10 machines each having chrome / firefox version 130 installed. (which is inline with selenium 4.26 devtools support)

Problem:1.In standalone mode, i can able to retrieve logs but in grid mode i was unable to generate logs and it doesn't show any errors/warnings too.2. In Standalone mode itself for firefox browser, devtools logs are not generated.

private void getNetworkLog() {    String browserName = ReadPropertyFile.getInstance().getPropertyValue("browserName");    try {        DevTools devTools = null;        // Create DevTools session        if(ReadPropertyFile.getInstance().getPropertyValue("runMode").equalsIgnoreCase(RunModeConstants.STANDALONE_MODE) &&                 browserName.equalsIgnoreCase(BrowserConstants.CHROME_BROWSER)) {        devTools = ((ChromeDriver) RemoteCustomDriver.getInstance().getRemotedriver()).getDevTools();        }else if(ReadPropertyFile.getInstance().getPropertyValue("runMode").equalsIgnoreCase(RunModeConstants.STANDALONE_MODE) &&                 browserName.equalsIgnoreCase(BrowserConstants.FIREFOX_BROWSER)) {            devTools = ((FirefoxDriver) RemoteCustomDriver.getInstance().getRemotedriver()).getDevTools();            }else if(ReadPropertyFile.getInstance().getPropertyValue("runMode").equalsIgnoreCase(RunModeConstants.STANDALONE_MODE) &&                 browserName.equalsIgnoreCase(BrowserConstants.EDGE_BROWSER)) {            devTools = ((EdgeDriver) RemoteCustomDriver.getInstance().getRemotedriver()).getDevTools();            }else if(ReadPropertyFile.getInstance().getPropertyValue("runMode").equalsIgnoreCase(RunModeConstants.GRID_MODE) &&                     browserName.equalsIgnoreCase(BrowserConstants.CHROME_BROWSER)) {                RemoteWebDriver d=new ChromeDriver();                if(d instanceof ChromeDriver) {                log.info("Remotewebdriver is instace of chromedriver");                ChromeDriver c = (ChromeDriver)d;                devTools = c.getDevTools();                }        }        if (devTools!=null) {            devTools.createSession();            // Enable network logging            devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty()));            // Register listener for network events            devTools.addListener(Network.requestWillBeSent(), event -> {                log.info("Request URL: " + event.getRequest().getUrl());                log.info("Request headers -->" + event.getRequest().getHeaders());                if (event.getRequest().getHasPostData().isPresent()) {                    log.info("POST data -->" + event.getRequest().getPostData());                }                // You can print other information from the event such as request method,                // headers, etc.            });            devTools.addListener(Network.responseReceived(), event -> {                Integer statusCode = event.getResponse().getStatus();                if (statusCode.toString().startsWith("4")) {                    log.info("Received status code -->" + event.getResponse().getStatus()+" when hitting the url --> " + event.getResponse().getUrl());                    log.info("Request headers -->" + event.getResponse().getRequestHeaders());                    log.info("Response received is -->" + event.getResponse());                }                // You can print other information from the event such as response status,                // headers, etc.            });        }    } catch (Exception e) {        log.error(e.toString());        throw new RuntimeException(e.toString());    }}

Viewing all articles
Browse latest Browse all 98784

Trending Articles