当前位置:   article > 正文

APP自动化-uiautomator2--2、超详细的辅助定位工具讲解-weditor_uiautomator2 定位工具

uiautomator2 定位工具

下载

pip install weditor
  • 1

这个库,直接pip下起来有点麻烦,会经常失败,可以尝试换源,我这里是没有换源,一直等到它自己重试成功。如果一直下载不成功,可以指定下载版本如0.6.4版本。

环境

注意下载环境,我这里是虚拟环境
image.png
所以下载成功后,简单的操作—需要去更换一下系统环境配置(不切换,环境识别不到安装了weditor),然后就可以直接命令启动了。(当然有其他的方式)

启动

cmd输入python -m weditor,就会启动服务了,本地会打开一个界面。当然,cmd界面是这样的
image.png
浏览器界面是这样的:
image.png

使用weditor

image.png
启动后,需要手动在1处输入设备号,然后点击2处,连接,连接成功后Connect后面就会显示一个绿色的草。最后3处会告诉你完成[Finished 1.034s]。

静态实时

image.png
静态:在你点击手机屏幕的时候不会跟着刷新界面信息,需要手动点击左边的"Dump Hierarchy"刷新
实时:开启后,随着手机屏幕的变化而变化显示的信息参数

页面参数1

image.png

上图中,可以很明显的看到"activity"以及坐标等参数信息。这里都是可以拿来定位用的。具体定位看定位章节。 XPathLite 、 resourceId 、 package 、index、 className 这些都是可以作为定位来使用。

在最下方,有一个代码标识符,里面已经使用resourceId 将这里的定位写法已经写出来了,直接copy即可。

再往上的rect,就是所选中的"控件"的基本信息了,所处的XY轴以及宽高

页面参数2

image.png
此处看模拟点击以及写入文本操作,tap widget(Beta)无需管,测试按钮,也是用来点击的。主要常用的就是Tap、Send Keys。

他们三在你选中控件后,会有右边生成代码,如下(如下是我重复一个控件两次的代码):

image.png
输入文本的样式如下:
image.png

tap widget(Beta)

这个目前主要是一个调试作用,效果为点击,但是使用它,你必须装两个库

pip install findit
pip3 install opencv-python
  • 1
  • 2

不然会有找不到模块的错误,如何使用(此处直接展示代码):

import uiautomator2 as u2

app = u2.connect("ERLDU19723002447")
app.app_start("com.android.settings",".HWSettings")
app.widget.click("00003#")
  • 1
  • 2
  • 3
  • 4
  • 5

这段代码的效果跟页面参数1的效果一直,都为点击搜索设置项

在pycharm运行中,会自带如下的日志参数

image.png

页面参数3

image.png
此页面为一个简单的调试界面,你可以在这里跑代码,调试代码。在下面有一个Console,用于看执行日志的。

页面参数4

image.png
这里就是模拟手机的返回,或者主界面的一些按钮。

注意事项

冲突

不能与Appium等一些相关定位软件同时启动

退出

在启动后的cmd界面,直接CTRL + C即可,按一次无用,连续两次即可。

服务断开

image.png
解决这个,只需要重启服务即可,断开python -m weditor,重新打开cmd,启动服务。

uiautomatorviewer无法打开

作者言:因为atx-agent的存在uiautomator一旦运行,就会有守护服务,它与uiautomatorviewer 有冲突。所以需要stop掉uiautomator的服务

import uiautomator2 as u2

app = u2.connect("emulator-5554")
app.uiautomator.stop()
  • 1
  • 2
  • 3
  • 4

灰屏|黑屏

这跟node.js版本有关系,目前博主用到的是16版本的。没有问题。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/709041
推荐阅读
  

闽ICP备14008679号