我正在与实施Listener
的Selenium Webdriver,MyEventListener
和WebDriverEventListener
合作。这个MyEventListener
在EventFiringWebDriver
上注册如下:
EventFiringWebDriver myTestDriver = new EventFiringWebDriver(
web_driver);
myListener = new MyEventListener(this.getClass().getName());
myTestDriver.register(myListener);
driver = myTestDriver;
现在我必须使用AndroidDriver
移动设备,我想要相同的结构。我找到了AppiumWebDriverEventListener
。 MyEventListener implements AppiumWebDriverEventListener
,但现在我无法制作相同的结构,因为EventFiringWebDriver
与AndroidDriver
不兼容。我试试这个:
myDriver = (AndroidDriver) new BQAquarisDriver().returnDriver(driverPlace, new BQAquarisDriver());
EventFiringWebDriver myTestDriver = new
EventFiringWebDriver(myDriver);
myListener = new MyEventListener(this.getClass().getName());
myTestDriver.register(myListener);
myDriver = myTestDriver;
但是不起作用。
答案 0 :(得分:1)
Appium有这个界面" AppiumWebDriverEventListener "与" WebDriverEventListener "相同。
您可以在this GitHub repository中找到有关Appium Listeners的一切信息,要实现的接口和使用方法。
答案 1 :(得分:1)
我们可以使用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());