WebDriverEventListener
中的 Selenium Webdriver
接口包含方法
public void beforeFindBy(By arg0, WebElement arg1, WebDriver arg2);
我的理解是这个方法在每次webdriver搜索元素之前执行。我的问题是在找到特定的WebElement
之前如何将WebElement参数传递给方法答案 0 :(得分:1)
WebElement参数不是实际元素,而是必须执行搜索的元素。
在driver.findElement()
的情况下,将传递null。
在element.findElement()
的情况下,元素将被传递。
类似于findElements()
方法。查看使用EventFiringWebDriver
的{{1}}代码。
答案 1 :(得分:0)
如果你看下面的实现,我认为这对你来说很明确:
FirefoxDriver driver = new FirefoxDriver();
EventFiringWebDriver eventDriver = new EventFiringWebDriver(driver);
EventHandler handler = new EventHandler();
eventDriver.register(handler);
这里注册方法将让你注册我们的WebDriverEventListner实现来监听WebDriver事件。
所以在做任何事情之前,它会使用初始化的驱动程序调用监听器。
本网站上有关于此的明确文档: