ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

移动端UI自动化测试DEMO之环境部署(基于uiautomator2)

2022-01-26 10:32:54  阅读:318  来源: 互联网

标签:DEMO weditor adb pip UI uiautomator2 安装 模拟器


  近期,由于没有项目不是很忙,所以动手研究起关于移动端APP的自动化测试的功能。原本已经找到了Appium来做移动端的自动化测试,但是后面看到有人推荐用uiautomator2。因此,我也就尝试一下,看看效果如何。

1、安装adb,具体操作,可以百度一下

 

 

 2、安装uiautomator2;

因为我使用的是anaconda,用的是python 3.7的版本。

直接切换到3.7版的python环境。

activate py37

 

直接使用pip进行安装uiautomator2包。【-U, - upgrade 将对应的软件包升级到最新的可用版本,--pre 查找预发行和正在开发的版本,默认情况下,pip仅查找稳定版本。】

pip install -U --pre uiautomator2

由于网络问题到安装异常缓慢,可换成了国内的源进行安装,速度会更快。

pip install -U --pre uiautomator2 -i https://pypi.doubanio.com/simple

3、需要pillow来处理截图数据

pip install -U --pre pillow -i https://pypi.doubanio.com/simple

 

 

 4、安装安卓模拟器:

  这里的选择性就比较多了。笔者安装了好几款模拟器,夜神nox、逍遥模拟器、BlueStacks蓝叠,看个人喜好安装吧。个人调试用的逍遥模拟器

 

 

 5、尝试使用abd连接模拟器:此处有坑,需要注意

⑴使用蓝叠模拟器

 

①打开蓝叠模拟器,然后adb devices命令查看设备信息,可以看到下图 

 

 

 

 ②直接使用adb命令连接该设备,结果就是报错了

adb connect emulator-5554

 ③尝试使用本地的ip+端口号连接,居然成功了    

adb connect 127.0.0.1:5555

 ④再次查看设备信息(虽然adb可以连接了,但后续自动化连接除了问题,笔者后续再研究一下看看)

 

 

⑵使用逍遥模拟器

①使用adb的命令查看了一下,居然是没有任何信息可以查看到的。

②百度了一下,最后居然要连接特定的端口才行       

adb connect 127.0.0.1:21503

③查看一下连接设备

 

 ④设备安装atx-agent

python -m uiautomator2 init

安装成功后,模拟器中会出现一个图标ATX的app

 

 

 6、使用Python安装weditor

有了这个,方便我们快速的识别手机上的元素,方便写代码

pip install -U weditor

注:在Windows系统,可使用 命令创建一个快捷方式:CMD执行:weditor --shortcut

  

启用weditor的方式:

方法1.命令行直接输入 weditor 会自动打开浏览器,输入设备的ip或者序列号,点击Connect即可;
方法2.桌面上双击WEditor快捷方式即可;
方法3.命令行中执行 python -m weditor

 7、启用weditor

 ⑴点击桌面图标,然后就是这个样子的。

 

 ⑵并且自动跳转进入浏览器页面了

 

⑶可以直接输入设备IP+POST,连接到逍遥模拟器,连接前是这样的

 

 ⑷连接后是这样的,多了树叶的标识

 

 ⑸然后,就可以开始录制脚本了。点击页面的模拟器中图标

 

 

 ⑹页面右侧会自动显示对应操作的代码,是不是感觉非常的简单易操作呢。

 

 

 

 

 

 

 

 

 

 

 

 

 

          

    

标签:DEMO,weditor,adb,pip,UI,uiautomator2,安装,模拟器
来源: https://www.cnblogs.com/ruichow/p/15843782.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有