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啦!
Appium,AirTest切换使用时,appium罢工之坑(1)的更多相关文章
- PostgreSQL与PostGIS安装使用时需要注意的坑
最近些许繁忙,没有时间系统整理PostgreSQL和PostGIS的安装和使用方法.所以就简单记录一下遇到的坑. 1.找不到 libintl-9.dll 我安装的PostgreSQL版本是11.7,P ...
- [开发笔记]-sqlite数据库在使用时遇到的奇葩问题记录
有时候做些简单的项目一般都会选择sqlite数据库,优点有很多,这里就不详细说了. 在此主要记录一些平时在使用时遇到的问题及解决方法.希望能对大家有所帮助. --------------------- ...
- Cookie使用时需要注意个数及大小限制
各浏览器对Cookie有一定的限制,在使用时需要格外注意. 各浏览器之间对cookie的不同限制: IE6.0 IE7.0/8.0/9.0+ Opera FF Safari Chrome cook ...
- EntityFrameWork 使用时碰到的小问题
EntityFrameWork 使用时碰到的小问题 1,在使用orm访问数据库的相目里,也要引用EntityFrameWork.dll,否则无法使用orm 否则,编译错误 错误 5 "Sys ...
- MySQL 安装和启动服务,“本地计算机 上的 MySQL 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。”
MySQL 安装和启动服务,以及遇到的问题 MySQL版本: mysql-5.7.13-winx64.zip (免安装,解压放到程序文件夹即可,比如 C:\Program Files\mysql-5. ...
- Appium移动自动化测试之安装Appium
第一次学习appium,希望此安装教程可以帮助初学者,共同学习. Appium官网介绍:Appium是与本地,使用开源自动化测试框架, 混合和移动Web应用程序. 它驱动iOS和Android应用使用 ...
- MaterialCalendarView使用时遇到的问题
一.概述 MaterialCalendarView是一个开源项目.功能强大支持多选.单选.标注等. 二.问题 1.其继承自ViewGroup,故与CalendarView半毛钱关系都没有,完全是一个新 ...
- [备忘][转]rsync使用时的常见问题
sync使用时的常见问题: 错误1: rsync: read error: Connection reset by peer (104) rsync error: error in rsync pro ...
- 小白学数据分析----->移动游戏的使用时长分析
写下该文章,是因为之前看到了几款游戏一个典型的玩家刺激活动,在<多塔联盟>,<萌江湖>等多款游戏的设计中都有体现,如下图所示: 这个功能点的设计,今天在这里讲的更多的还是跟数据 ...
随机推荐
- TCP_Wrappers应用层防火墙
TCP_Wrappers是一个工作在应用层的安全工具,它只能针对某些具体的应用或者服务起到一定的防护作用.比如说ssh.telnet.FTP等服务的请求,都会先受到TCP_Wrappers的拦截. T ...
- UnicodeDecodeError: 'utf8' codec can't decode byte 0xc4 in position 0: i报错
在程序的顶部加了下面两行就好了,中文也可以正常显示了 #!/usr/bin/env Python# coding=utf-8
- [SC] OpenSCManager 失败 5:拒绝访问
问题:[SC] OpenSCManager 失败 5: 网查这个错误信息指拒绝访问 权限不足 1.解决: 以管理员身份运行cmd,即可 查询这个提示是指什么错误时,看网上有很多文章写用下面这种方法, ...
- Oracle之:Function :getdate()
create or replace function getdate(sp_date varchar) return date is Result date; begin if LENGTH(sp_d ...
- BZOJ 3881[COCI2015]Divljak (AC自动机+dfs序+lca+BIT)
显然是用AC自动机 先构建好AC自动机,当B中插入新的串时就在trie上跑,对于当前点,首先这个点所代表的串一定出现过,然后这个点指向的fail也一定出现过.那么我们把每个点fail当作父亲,建一棵f ...
- freemarker 生成word
一.生成模板,动态获取的部分用${变量名},然后将word另存为xml文件,再将后缀名改成ftl格式.然后将模板放在对应的目录下. 二.引入freemarker包,mawen引用 <depend ...
- jQuery.getJSON(url, [data], [callback])
jQuery.getJSON(url, [data], [callback]) 概述 通过 HTTP GET 请求载入 JSON 数据. 在 jQuery 1.2 中,您可以通过使用JSONP形式的回 ...
- Hibernate 5 的模块/包(modules/artifacts)
Hibernate 的功能被拆分成一系列的模块/包(modules/artifacts),其目的是为了对依赖进行独立(模块化). 模块名称 说明 hibernate-core 这个是 Hibernat ...
- The 2018 ACM-ICPC Asia Qingdao Regional Contest, Online(2018 青岛网络预选赛)
A题 A Live Love 原题链接:https://pintia.cn/problem-sets/1036903825309761536/problems/1041155943483625472 ...
- HZOJ 20190722 visit (组合数学+数论)
考试T2,考试时打了个$O(n^3)$dp暴力,思路还是很好想的,但细节也不少,然后滚动数组没清空,而且题又看错了,只得了10pts,真是血的教训. 题解: 其实看数据范围,给出了模数是否为质数,其实 ...