package listeners; import java.net.MalformedURLException; import java.net.URL; import org.openqa.selenium.By; import org.openqa.selenium.remote.DesiredCapabilities; import org.openqa.selenium.remote.RemoteWebDriver; import org.openqa.selenium.support.events.EventFiringWebDriver; import org.testng.annotations.AfterTest; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test; public class MainEventHandler { public RemoteWebDriver driver = null; String username = ""; String accessKey = "";; @BeforeTest public void setUp() throws Exception { DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("browserName", "Chrome"); capabilities.setCapability("version", "92.0"); capabilities.setCapability("platform", "Windows 10"); capabilities.setCapability("resolution", "1024x768"); capabilities.setCapability("build", "Selenium Automation Testing"); capabilities.setCapability("name", "Events And Listeners with JAVA"); capabilities.setCapability("network", true); // To enable network logs capabilities.setCapability("visual", true); // To enable step by step screenshot capabilities.setCapability("video", true); // To enable video recording capabilities.setCapability("console", true); // To capture console logs try { driver = new RemoteWebDriver( new URL("https://" + username + ":" + accessKey + "@hub.lambdatest.com/wd/hub"), capabilities); } catch (MalformedURLException e) { System.out.println("Invalid grid URL"); } } @AfterTest public void teardown() { driver.quit(); } @Test(enabled = true) public void testEventListerners() { EventFiringWebDriver eventFiringWebDriver = new EventFiringWebDriver(driver); WebDriverEventHandler webDriverEventHandler = new WebDriverEventHandler(); eventFiringWebDriver.register(webDriverEventHandler); eventFiringWebDriver.navigate().to("https://www.lambdatest.com/selenium-playground/simple-form-demo"); eventFiringWebDriver.findElement(By.id("user-message")).sendKeys("WebDriver Event Listener"); eventFiringWebDriver.findElement(By.id("showInput")).click(); eventFiringWebDriver.navigate().refresh(); eventFiringWebDriver.unregister(webDriverEventHandler); } }