【Mac安装,ATX基于uiautomator2】之安装步骤
Mac系统下安装uiaotumator2:
参考网址:《uiautomator2》以及参考github官方文档
注意:下面有坑,如果你没有下面的问题请直接跳转到
1、安装uiaotumator2命令:
pip install --upgrade --pre uiautomator2
提示报错:
Could not install packages due to an EnvironmentError: [Errno 1] Operation not permitted: '/usr/local/bin/chardetect'

经查询用下面的指令安装:
pip install --user --upgrade --pre uiautomator2

提示以上黄色信息是建议对以上几个执行程序设置环境路径设置,而这几个执行程序都在AppData这个隐藏路径下,需要手动在文件路径栏输入回车
上文解决问题参考【网址】
2、
Deploy associated daemons to a device 电脑连接上一个手机或多个手机, 确保adb已经添加到环境变量中,执行下面的命令会自动安装本库所需要的设备端程序:uiautomator-server 、atx-agent、openstf/minicap、openstf/minitouch
# init 所有的已经连接到电脑的设备
python -m uiautomator2 init
安装到这块的时候,发现个严重的问题:
安装失败,查看得知之前安装的时候,pip安装uiautomator2时安装在python2.7默认版本下了。

有趣的是python版本是3.6.1,但是pip默认为2.7版本,这个就懵逼了。
后来经过查询得知,下面为解决办法:
《Mac OSX同时安装Python 2.7和Python3.6及常见问题解决》
原因是我的PATH环境变量名字写错了,如下操作解决办法:
#打开.bash_profile文件: open -e .bash_profile
我之前默认的PATH路径为,红色为出问题地方:
export PATH=${PATH}:/Users/zhangc/.pyenv/versions/3.6.1/bin
修改为:
export PATH=/Users/zhangc/.pyenv/versions/3.6.1/bin:$PATH
把PATH放在后面,具体为什么就不知道了。
保存.bash_profile文件:command+S。
最后让PATH变量生效命令:
source .bash_profile
再输入命令:
pip --version 或者 pip -V
显示正确了:
pip 9.0.1 from /Users/zhangc/.pyenv/versions/3.6.1/lib/python3.6/site-packages (python 3.6)
从现在开始继续重新开始安装uiautomator2环境,悲催啊!!!>o<
一、安装uiautomator2命令
pip install --upgrade --pre uiautomator2
Successfully,提示uiautomator2安装成功,如下图:

二、可以选择性安装pillow,处理屏幕截图数据,不强制
安装pillow命令:
pip install pillow
Requirement already satisfied:提示已经安装在环境下了。
三、安装adb
因为我的Mac有adb所以就不用安装了,具体安装步骤参考《Mac 安装adb 以及基本的命令》
但是我需要设备号信息,命令为:
adb devices 输出设备号信息
四、安装设备端程序
# init 所有的已经连接到电脑的设备
python -m uiautomator2 init
输出success表示成功,如下图:

五、Install weditor(UI Inspector)
因为uiautomator是独占资源,所以当atx运行的时候uiautomatorviewer是不能用的,为了减少atx频繁的启停,我们开发了基于浏览器技术的weditor UI查看器。https://github.com/openatx/weditor
安装命令方法:
pip install --pre -U weditor
Successfully,提示安装成功,如下图:

六、启动weditor
命令行启动:
python -m weditor
会自动打开浏览器,输入设备的ip或者序列号,点击Connect即可。
具体参考文章:浅谈自动化测试工具python-uiautomator2

自动打开浏览器:
输入adb的设备号,点击【Connect】按钮连接,并按【Reload】蓝色按钮刷新手机页面,如下图

至此uiaotumator2安装成功!!!
====================================
但是经过一段时间不用的时候再打开发现,报错了:
requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer'))

解决办法如下:
pc命令行里再执行一次:python -m uiautomator2 init,再重新更新下就可以了!!


【Mac安装,ATX基于uiautomator2】之安装步骤的更多相关文章
- 【Ubuntu安装,ATX基于uiautomator2】之安装步骤
Ubuntu系统下安装uiautomator2步骤: 1.安装命令: pip install --upgrade --pre uiautomator2 但是报错: Command "pyth ...
- 【Mac + ATX基于uiautomator2】使用weditor时,报错:requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer'))
产生以下原因找到了:是因为启动了appium,两者冲突,不能同时使用. 之前讲过怎么安装u2([Mac安装,ATX基于uiautomator2]之安装步骤)以及使用weditor, 但是经过一段时间, ...
- 【ATX学习大纲】【ATX基于uiautomator2+Python学习】之Android自动化
github学习地址:https://github.com/openatx/uiautomator2 <_io.TextIOWrapper name='<stderr>' mode= ...
- 【Python + ATX基于uiautomator2】之编写unittest自动化测试脚本
不说废话上代码: #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2018/08/31 09:43 # @Author : zc # @ ...
- 【学习ATX基于uiautomator2】之API操作Android方法
具体API可参考:<uiautomator2>以及参考github官方文档 感谢:Ricky_Frog <Python+uiautomator2手机UI自动化测试实战 -- 2. 用 ...
- 【Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(二):安装facebook-wda库并编写简易自动化测试脚本
上一篇介绍完如何安装WDA,接下来开始正式安装开发库并编写自动化脚本. 目录: 一.安装facebook-wda库 二.通过WEditor定位元素 三.附录:学习资料 一.安装facebook-wda ...
- 基于VM10+Win7安装Mac OSX10.11 El Capitan
前言 此文写给那些像我一样的屌丝程序员(呵呵,我现在从事的是最底层的工作了,但是不想放弃我的梦想) 说明 基于VM10+Win7安装Mac OSX10.11 El Capitan 工具 VMware- ...
- mac os x在PC上安装
系统安装之前的准备工作及安装过程简介 前面我们已经提到,苹果电脑虽然已经采用了x86架构的Intel处理器,但其官方并不提供在非苹果电脑上安装Mac OS的支持.所以,要想在普通PC/笔记本电脑上安装 ...
- Mac下CUDA开启及Tensorflow-gpu安装
本文由@ray 出品,转载请注明出处. 文章链接:http://www.cnblogs.com/wolfray/p/8040694.html 在之前的文章中,笔者介绍了在Mac下安装Tensorfl ...
随机推荐
- MySQL第三方客户端工具
如前所述,MySQL是一个基于客户机--服务器的DBMS,因此,为了使用MySQl,你需要有一个客户机软件给MySQL提供要执行的命令.即你需要一个编写和测试MySQL脚本的工具. 1.MySQL命令 ...
- 【FTP】java FTPClient 文件上传内容为空,文件大小为0
问题:如题所述,使用FTPClient上传至FTP服务器, 表现如下:①文件大小为0 ②上传很小的文件,但是要花费很长的时间,20K要花费2分钟甚至更久 ③没有任何的报错,没有任何的乱码 解决方法: ...
- Silverlight游戏设计(Game Design):(十四)练习用游戏素材资源的获取及相关工具使用心得 --转
Silverlight游戏设计(Game Design):(十四)练习用游戏素材资源的获取及相关工具使用心得 通过前6节的Demo制作演示,大家应该已经相当熟悉这款Silverlight-2D游戏场景 ...
- C#基础之 派生类
1: 当创建派生类的实例时,会自动调用基类的默认构造函数 namespace parentTest { public class Reader { public Reader() { Console. ...
- sun.misc.BASE64Decoder导入异常及处理思路
Java后台保存base64图片数据 使用byte[] bytes = new BASE64Decoder().decodeBuffer(str);需要引入sun.misc.BASE64Decoder ...
- sqoop操作与使用
sqoop只要安装到集群中的一台节点就可以了 1.上传sqoop到节点中 2.安装和配置 在添加sqoop到环境变量到/etc/profile中 将数据库连接驱动拷贝到$SQOOP_HOME/lib里 ...
- Spark下载与入门(Spark自学二)
2.1 下载Spark 略 2.2 Spark中Python和Scala的shell Spark shell可用来与分布式存储在许多机器的内存或者硬盘上的数据进行交互,并且处理过程的分发由Spark自 ...
- 1-N中1出现的次数
/*标记1-N中1出现的次数.例如,当N等于18时,1出现的次数为2 + 9 = 11 个位数出现1的为:1,11,十位数出现1的为10-18*/public class OneNoInN { // ...
- socket编程演示样例(多线程)
client代码例如以下: import java.io.*; import java.net.*; import java.util.Scanner; public class SimpleChat ...
- Android重写ViewPager改动滑动灵敏度
使用ViewPager作为一个页面进行切换.里面能够存放非常多View,但有时在操作View时不小心滑动一下就有可能跳到下一页,这并非我们想要的,这里就须要重写ViewPager改动它的滑动条 ...