python中uiautomator2环境安装

python

uiautomator2简介

什么是uiautomator2?

python-uiautomator2 是一个自动化测试开源工具,仅支持 Android 平台的原生应用测试。

原理:在手机上运行了一个http rpc服务,将uiautomator中的功能集成进来,然后再将这些http接口封装成Python库。

uiautomator2的优点

  • 环境搭建便捷
  • UI控件识别有专业工具weditor,可视化好
  • UI自动化编写采用Python
  • UI自动化脚本运行稳定
  • 帮助文件是中文

官网:https://github.com/openatx/uiautomator2

Uiautomator2支持环境

1、Android版本 4.4+

2、Python3.6+

uiautomator2安装

python环境:python3.7.1

pip install uiautomator2

安装完成后查看uiautomator2,所有依赖的包如下图:

uiautomator2对连接的移动设备进行初始化

执行命令:python -m uiautomator2 init    后自动下载下面依赖包

  • 自动下载uiautomator-server谷歌原生的uiautomator
  • atx-agent:uiautomator的守护进程
  • atx-agent增加远程控制的功能,依赖minicap和minitouch这两个工具

安装前提条件:

移动设备是模拟器,设置--->开发者选择中-->开启USB调试

移动设备是安卓手机,通过usb线连接且必须开启USB调试

执行:python -m uiautomator2 init  进行初始化操作

如图对移动设备初始化完成,会在移动设备中安装ATX包 

原理:移动设备上安装atx-agent(守护进程),随后atx-agent启动uiautomator2服务(默认7912端口)进行监听;

           在PC端使用Python编写测试脚本并执行(相当于发送HTTP请求到移动设备的server端);

           移动设备通过WIFI或USB接收到PC上发来的HTTP请求,执行指定的操作;

查看端口命令:

adb shell   -->查到进程号  输入命令:  busybox netstat -pt | grep 进程号   查看端口

测试代码:

#!/usr/bin/env python

# -*- coding: utf-8 -*-

# author: 青城子

# datetime: 2021/4/11 22:48

# ide: PyCharm

import uiautomator2 as u2

import time

d = u2.connect("127.0.0.1:62025")

# 打开debug模式,查看通讯流程

d.debug = True

# 查看简单的设备信息

print(d.info)

输出:

C:\Python\python.exe C:/work/imooc/u2_project/test2.py

11:34:01.871 $ curl -X POST -d '{"jsonrpc": "2.0", "id": "32cc7a24de4501c621d05b4c4f28e382", "method": "deviceInfo", "params": {}}' 'http://127.0.0.1:39356/jsonrpc/0'

11:34:02.112 Response (241 ms) >>>

{"jsonrpc":"2.0","id":"32cc7a24de4501c621d05b4c4f28e382","result":{"currentPackageName":"com.android.settings","displayHeight":1280,"displayRotation":0,
"displaySizeDpX":480,"displaySizeDpY":853,"displayWidth":720,"productName":"VOG-AL10","screenOn":true,"sdkInt":22,"naturalOrientation":true}}

<<< END

{'currentPackageName': 'com.android.settings', 'displayHeight': 1280, 'displayRotation': 0, 'displaySizeDpX': 480, 'displaySizeDpY': 853, 'displayWidth': 720, 'productName':
'VOG-AL10', 'screenOn': True, 'sdkInt': 22, 'naturalOrientation': True}

以上是 python中uiautomator2环境安装 的全部内容, 来源链接: utcz.com/z/387046.html

回到顶部