I'm working with Selenium Webdriver, Listener
and MyEventListener
who implements WebDriverEventListener
. This MyEventListener
is register on EventFiringWebDriver
like this:
EventFiringWebDriver myTestDriver = new EventFiringWebDriver(
web_driver);
myListener = new MyEventListener(this.getClass().getName());
myTestDriver.register(myListener);
driver = myTestDriver;
Now I must work with an AndroidDriver
for mobile and I want the same structure. I have found the AppiumWebDriverEventListener
. MyEventListener implements AppiumWebDriverEventListener
, but now I can't make the same structure because the EventFiringWebDriver
is not compatible with AndroidDriver
. I try this:
myDriver = (AndroidDriver) new BQAquarisDriver().returnDriver(driverPlace, new BQAquarisDriver());
EventFiringWebDriver myTestDriver = new
EventFiringWebDriver(myDriver);
myListener = new MyEventListener(this.getClass().getName());
myTestDriver.register(myListener);
myDriver = myTestDriver;
But does not work.
Appium has this interface " AppiumWebDriverEventListener " which is the same as " WebDriverEventListener ".
And you can find in this GitHub repository everything about Appium Listeners, what interfaces to implement and how to use.
We can implement using EventFiringWebDriverFactory
: https://appiumlistener.blogspot.com/
AndroidDriver driver = new AndroidDriver<AndroidElement>(new URL("http://127.0.0.1:4723/wd/hub"), cap);
driver = EventFiringWebDriverFactory.getEventFiringWebDriver(driver, new ActivityCapture());
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.