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-agentopenstf/minicapopenstf/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】之安装步骤的更多相关文章

  1. 【Ubuntu安装,ATX基于uiautomator2】之安装步骤

    Ubuntu系统下安装uiautomator2步骤: 1.安装命令: pip install --upgrade --pre uiautomator2 但是报错: Command "pyth ...

  2. 【Mac + ATX基于uiautomator2】使用weditor时,报错:requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(54, 'Connection reset by peer'))

    产生以下原因找到了:是因为启动了appium,两者冲突,不能同时使用. 之前讲过怎么安装u2([Mac安装,ATX基于uiautomator2]之安装步骤)以及使用weditor, 但是经过一段时间, ...

  3. 【ATX学习大纲】【ATX基于uiautomator2+Python学习】之Android自动化

    github学习地址:https://github.com/openatx/uiautomator2 <_io.TextIOWrapper name='<stderr>' mode= ...

  4. 【Python + ATX基于uiautomator2】之编写unittest自动化测试脚本

    不说废话上代码: #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2018/08/31 09:43 # @Author : zc # @ ...

  5. 【学习ATX基于uiautomator2】之API操作Android方法

    具体API可参考:<uiautomator2>以及参考github官方文档 感谢:Ricky_Frog <Python+uiautomator2手机UI自动化测试实战 -- 2. 用 ...

  6. 【Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(二):安装facebook-wda库并编写简易自动化测试脚本

    上一篇介绍完如何安装WDA,接下来开始正式安装开发库并编写自动化脚本. 目录: 一.安装facebook-wda库 二.通过WEditor定位元素 三.附录:学习资料 一.安装facebook-wda ...

  7. 基于VM10+Win7安装Mac OSX10.11 El Capitan

    前言 此文写给那些像我一样的屌丝程序员(呵呵,我现在从事的是最底层的工作了,但是不想放弃我的梦想) 说明 基于VM10+Win7安装Mac OSX10.11 El Capitan 工具 VMware- ...

  8. mac os x在PC上安装

    系统安装之前的准备工作及安装过程简介 前面我们已经提到,苹果电脑虽然已经采用了x86架构的Intel处理器,但其官方并不提供在非苹果电脑上安装Mac OS的支持.所以,要想在普通PC/笔记本电脑上安装 ...

  9. Mac下CUDA开启及Tensorflow-gpu安装

    本文由@ray 出品,转载请注明出处.  文章链接:http://www.cnblogs.com/wolfray/p/8040694.html 在之前的文章中,笔者介绍了在Mac下安装Tensorfl ...

随机推荐

  1. WebGL的颜色渲染-渲染一张DEM(数字高程模型)

    目录 1. 具体实例 2. 解决方案 1) DEM数据.XYZ文件 2) showDEM.html 3) showDEM.js 4) 运行结果 3. 详细讲解 1) 读取文件 2) 绘制函数 3) 使 ...

  2. display:flex;多行多列布局学习

    从以前的table布局到现在的div布局,再到未来的flex布局,CSS重构方面对展示行和适应性的要求越来越高: 首先来比较一下布局方式的更新意义: table布局: 优点:1.兼容性好,ie6.ie ...

  3. 【java】递归统计本地磁盘所有文件,提取重复文件,JDK8 map迭代

    package com.sxd.createDao; import java.io.File; import java.time.LocalDateTime; import java.util.Has ...

  4. linux:使用comm命令比较两个文件:交集、差

    linux:使用comm命令比较两个文件:交集.差 comm命令可以按行比较两个排序好的文件,输出有3列:第一列是file1独有的.第二列是file2独有的,第三列是两者都有的,简单语法如下:NAME ...

  5. SSH 错误解决案例1:Read from socket failed: Connection reset by peer

    今天早上天天连接的开发机突然报出连接错误. 这个错误是SSH最常见错误,造成的原因也是千奇百怪(具体可goole),下面描述我的server的问题: 客户端报错 [root@server]# ssh ...

  6. Netty源码细节IO线程(EventLoop)(转)

    原文:http://budairenqin.iteye.com/blog/2215896 源码来自Netty5.x版本, 本系列文章不打算从架构的角度去讨论netty, 只想从源码细节展开, 又不想通 ...

  7. Java8 CompletableFuture组合式的编程(笔记)

    * 实现异步API public double getPrice(String product) { return calculatePrice(product); } /** * 同步计算商品价格的 ...

  8. 详解Python中的迭代器和使用

    对于一个列表,a = [1, 2, 3, 4],我们最常见的遍历方式就是: a = [1, 2, 3, 4] for item in a: print item 这里我们研究一种新的方式,就是迭代器. ...

  9. ngnix学习视频

    https://www.bilibili.com/video/av36019080/?p=1

  10. 使用Eclipse Memory Analyzer分析内存

    1 内存泄漏的排查方法 Dalvik Debug Monitor Server (DDMS) 是 ADT插件的一部分,当中有两项功能可用于内存检查 : ·    heap 查看堆的分配情况 ·     ...