How can I capture JavaScript exception in Selenium Java?

How can I capture JavaScript exception in Selenium Java?

Hi Ana!

It’s easy to capture JavaScript Exception while performing Java automation testing with Selenium.

You can use the below script to capture JavaScript Exception -

DevTools devTools = ((HasDevTools) driver).getDevTools();
devTools.createSession();

List<JavascriptException> jsExceptionsList = new ArrayList<>();
Consumer<JavascriptException> addEntry = jsExceptionsList::add;
devTools.getDomains().events().addJavascriptExceptionListener(addEntry);

//print
for (JavascriptException jsException : jsExceptionsList) {
    System.out.println("My JS exception message: " + jsException.getMessage());
    System.out.println("My JS exception system: " + jsException.getSystemInformation());
    jsException.printStackTrace();
    success = true;
}

You can also refer to the below GitHub repo for the above scenario -