WebDriver Event Listeners In Selenium | Selenium Tutorial

In this post, we see WebDriver Event Listeners in Selenium WebDriver. Listeners “listen” to the event defined in the selenium script and behave accordingly. The main purpose of using listeners is to create logs and reports. There are many types of listeners such as WebDriver Event Listeners and TestNG Listeners. Here in this post, we see WebDriver Event Listeners.

We need to know the following class and interface when we talk about listeners in Selenium.

WebDriverEventListener: This WebDriver Event Listener interface allows us to implement the methods

Once the script is executed, Selenium WebDriver does perform activities such as Type, Click, Navigate etc., To keep track of these activities we use WebDriver Event Listeners interface.

EventFiringWebDriver: This EventFiringWebDriver class actually fire WebDriver event

Lets see how to implement Listeners in Selenium WebDriver Script.

Step 1: Create a Class “EventCapture” to implement WebDriverEventListener methods

Step 2: Create another Class “ListenerMainClass” and write a script (which ever script you prefer)

Step 3: In the Class “ListenerMainClass“, Create EventFiringWebDriver object and pass driver object as a parameter

Step 4: In the Class “ListenerMainClass“, Create an object of the Class “EventCapture” where we implemented all the methods of WebDriverEventListener to register with EventFiringWebDriver

Lets see each step in detail to implement the WebDriver Event Listeners in Selenium:

Step 1: Create a Class “EventCapture” to implement WebDriverEventListener methods

Mouse hover on WebDriverEventListener and import WebDriverEventListener Interface and mouse hover on EventCapture and click on “Add unimplemented methods” to add multiple unimplemented methods (without body)

Here I am implementing afterNavigateBack, beforeNavigateBack methods.

Step 2: Create another Class “ListenerMainClass” and write a script (which ever script you prefer). Below script opens two webpages one after other and navigates backs to the first webpage

Step 3: In the Class “ListenerMainClass“, Create EventFiringWebDriver object and pass driver object as a parameter

Step 4: In the Class “ListenerMainClass“, Create an object of the Class “EventCapture” where we implemented all the methods of WebDriverEventListener to register with EventFiringWebDriver

Finally, Execute the “ListenerMainClass” class. Methods in class “EventCapture” are called automatically based on the script. Verify the Output in the console. You could find the logs in the console. The two url’s in the console are just because the implementation of beforeNavigateBack and afterNavigateBack methods.

If you are not regular reader of SoftwareTestingMaterial.com then I highly recommend you to signup for the free email newsletter using the below link.

WebDriver Event Listeners

Rajkumar SM is a founder of SoftwareTestingMaterial. He is a certified Software Test Engineer by profession and blogger & youtuber by choice. He has an extensive experience in the field of Software Testing. He writes here about Software Testing which includes both Manual and Automation Testing. He loves to be with his wife and cute little kid 'Freedom'.

Leave a Comment

Share via
Copy link
Powered by Social Snap