import uiautomator2 as u2
class HandleWDJ(object):
def __init__(self, serial="8681-A01-0xc60fcc9d"):
self.d = u2.connect_usb(serial=serial)
self.handle_WDJ_watcher()
pass
#监控器
def handle_WDJ_watcher(self):
self.d.watcher.when('//*[@resource-id="com.wandoujia.phoenix2:id/yn"]').click()
self.d.watcher.when('//*[@resource-id="com.wandoujia.phoenix2:id/yn"]').press("back")
self.d.watcher.when('//*[@resource-id="com.wandoujia.phoenix2:id/y9"]').click()
self.d.watcher.when('//*[@resource-id="com.wandoujia.phoenix2:id/y8"]').press("back")
self.d.watcher.when('//*[@resource-id="com.wandoujia.phoenix2:id/a83"]').click()
self.d.watcher.start()
pass
def close_app(self):
#关闭监控
self.d.watcher.stop()
self.d.app_stop("com.wandoujia.phoenix2")
self.d.app_clear("com.wandoujia.phoenix2")
pass
def handle_WDJ_app(self):
self.d.app_start(package_name="com.wandoujia.phoenix2")
#进入登录界面
self.d(resourceId="android:id/icon")[4].click()
self.d(resourceId="com.wandoujia.phoenix2:id/ke")[0].click()
self.d(resourceId="com.wandoujia.phoenix2:id/aif")[0].click()
#输入用户名密码
self.d.xpath('//*[@resource-id="com.wandoujia.phoenix2:id/rn"]').set_text("131******52")
self.d(resourceId="com.wandoujia.phoenix2:id/og")[0].set_text("abc123456789")
self.d(resourceId="com.wandoujia.phoenix2:id/po")[0].click()
pass
pass
if __name__ == '__main__':
wdj = HandleWDJ()
wdj.handle_WDJ_app()
wdj.close_app()
pass
这里:
监控器中使用watcher.when,是某个提示页面弹出时按下某个按钮。
此处是停止app,并且清空app缓存。
这里要注意,需要调用下watcher