appium连接手机做自动化,本来做的好好的。突然某一次开始一直报错这个socket hang up
我看网上有说uiautomator2的,又说uiautomator耗电严重,被手机自动杀的。都没解决我的问题
最后搞懂了我的起因:
上一次的调试链接没有主动断开,也即没有driver.quit() 掉,这时候去再启动一个session,由于上一个连接未中断,一直被占用着。。。就会非常非常危险
解决方法有个很笨的,但是效果还不错:
把手机里的appium setting卸载掉,跑一遍appium,让appium自己重新安装一次(我试过安卓应用设置里面找到这个appium setting,清空数据,没用还是要卸载才行)
接下来介绍几个非常容易导致这样的场景,大家可小心了:
1、appium咱们自己启动了个session,想看看元素定位啥的,没关掉,然后那边pycharm代码,直接手快一个快捷键跑起来了
2、pycharm想调试调试,故意设了断点,调试好了,才发现没有跑完,又一个快捷键
3、代码定位元素什么的,总之遇到了错误,爆红。没跑到driver.quit() 又一个快捷键(可能会导致啊,不一定)
针对第3点,写了个小的异常处理:
1 log = LoginPage() 2 try: 3 log.gotoPage() 4 except Exception as e: 5 print(e) 6 log.driver.quit()
这个坑,我是趟过来了~