使用python+uiautomator进行Android自动化测试

本文基于对Android开发有一定基础的人,记录下在配置自动化测试中遇到的一些坑。

Android方面

  • 在做自动化测试的时候,我们经常要根据控件的id来查找控件。
    这时候就需要用到 sdk/tools/bin/uiautomatorviewer.bat。如果双击发现提示说adb not installed,请修改这个bat文件。
    右键用文本编辑器打开,找到最后一行,将等于后右边改成自己的sdk\platform-tools路径
image.png
  • 如果这样子可以了,那第一步就告一段落了。如果一直打不开,提示说什么object not found。那需要再次尝试的方法可多了。重启、重新插拔、重启adb,无所不用,我反正是试了各种方法,最后重启才好的。手动允悲!如果还不行,那我建议可以放弃了,反正只需要resource的id,在layout看也是一样的,找找规律还是勉强可以用的。

Adb 方面

  • 先附上一波uiautomator 的下载地址https://github.com/xiaocong/uiautomator,在你pip install uiautomator之后,兴致满满地打开PyCharm去尝试一波,发现死活连不上手机。那么下面的方法可能会帮到你。
  1. 先装上以下两个apk,地址就在xiaocong的github上


    使用python+uiautomator进行Android自动化测试_第1张图片
    image.png
  2. 装完以后再把两个jar包,push到data/local/tmp下,记得先adb root ,adb remount。push完以后到目录去确定下是否push进去了。类似下面这样


    image.png

3.最关键的一步来了,再你确保上面都弄好了以后。
adb shell uiautomator runtest uiautomator-stub.jar bundle.jar -c com.github.uiautomatorstub.Stub 。
附上完整截图


image.png

Python

直接在script install 没啥好讲的 这一块网上很多例子

你可能感兴趣的:(使用python+uiautomator进行Android自动化测试)