Appium,AirTest切换使用时,appium罢工之坑(1)

由于一些元素不能定位,所以最近项目引用了Airtest

问题场景:

case的开始使用appium,case执行过程中,切换到airtest操作元素,待执行完airtest相关步骤之后,后续使用appium driver的步骤不在正常干活了……

 

问题原因:

因appium使用的是环境变量ANDROID_HOME指定路径sdk(/Users/XXX/Library/Android/sdk/platform-tools/adb)路径下的adb

而airtest api在安装的时候自带一个adb(/Users/XXX/Documents/GitHub/ProjectA/venv/lib/python3.6/site-packages/airtest/core/android/static/adb/mac/adb)

所以他门处于各自使用一个adb的状态,而这个两个adb的的version不一样,所以就会失败。

 

解决方法:

方法1.

由于我的local, sdk路径下的adb的版本低于airtest自带的版本

1. download adb from https://dl.google.com/android/repository/platform-tools-latest-darwin.zip  (记得download版本跟airtest相同版本的adb)
2. unzip the download file as package “platform-tools”
3. put the package “platform-tools” into “/Users/XXX/Library/Android/sdk/” 

 

方法2(推荐).

让appium和airtest使用同一个adb

我是让appium和airtest同时使用airtest自带的adb,所以我将 sdk(/Users/XXX/Library/Android/sdk/platform-tools/adb)路径下做了一个软连接指向airtest路径下的adb

1.cd /Users/XXX/Library/Android/sdk/platform-tools/

2.mv adb adb.bkp

3.ln -s /Users/XXX/Documents/GitHub/ProjectA/venv/lib/python3.6/site-packages/airtest/core/android/static/adb/mac/adb adb

 

完事就o啦!

 

posted @ 2019-03-28 16:49  HappyLeen  阅读(1274)  评论(2编辑  收藏  举报