ui自动化之uiautomator2原理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ui自动化之uiautomator2原理相关的知识,希望对你有一定的参考价值。

参考技术A 原理是在手机上运行了一个http rpc服务,将uiautomator中的功能开放出来,然后再将这些http接口封装成Python库。Python脚本执行每个操作都会转换成一个对http rpc服务的请求,http rpc服务接受这些请求,并调用原生uiautomator的api实现在手机上的操作。

从0到1完成UI自动化测试框架搭建之 UIAutomator2

这个系列主要是讲如何进行安卓的UI自动化的实现方案。

大致方案是用 UI Automator2+atx+Pytest+po+Allure来搭建。我们由浅入深,一个一个模块学过去,学完发现其实也都是些很简单的东西~

UI Automator2

这是一个Python的第三方库,用于Android自动化。

下载UI Automator2:

pip install uiautomator2

连接手机,usb线连接安卓手机,打开开发者调试模式,使用adb命令可以查询到对应设备号:

adb devices


手机安装atx小汽车:

python –m uiautomator2 init

安装可视化UI查看器:

pip install --pre -U weditor

拉起启动端实时投屏:

python -m weditor

如上图,就是拉起weditor的样子了。

然后将adb devices查询到的设备号填入,点击连接按钮:

出现绿色叶子后,说明已连接成功,再点击下旁边的Dump Hierarchy,即可展示出当前连接手机的投影界面。



我们可以通过点击投影界面的相关元素模块,得到对应的元素定位信息:


下面是几个常用的定位方式,可以根据实际情况选择使用,用哪个你开心就好~


然后我们拿到元素定位后,可以进行一些操作:


这里我们以网易云音乐创建歌单为例子,写一个简单的demo:


最后也给大家分享一下我的一些学习资料:


以上内容,对于软件测试的朋友来说应该是最全面最完整的备战仓库了,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你。关注下方我的公众号免费领取!

以上是关于ui自动化之uiautomator2原理的主要内容,如果未能解决你的问题,请参考以下文章

从0到1完成UI自动化测试框架搭建之 UIAutomator2

Uiautomator1.0与Uiautomator2.0测试项目搭建与运行原理

使用uiautomator2 对Android设备进行UI自动化/压测

Python UI自动化

常用的app测试工具推荐

Python + uiautomator2之编写unittest自动化测试脚本