使用uiautomator2自动化测试app(二)------操作篇
提示:
1. 推荐使用python3以上的版本来进行开发
2. 手机使用安卓手机,版本最好不要太老,一根数据线
3. 安装虚拟机(博主使用雷电)
操作:
这里只简单的介绍一些uiautomator2的基本使用语法
1. 测试连接
import uiautomator2 as u2
import uiautomator2.ext.htmlreport as htmlreport
from time import sleep
d = u2.connect('192.168.0.62')
print(d.info)
这里使用的是连接设备的ip,只需要将你的设备和电脑共处在同一个无线下即可
也可以使用usb连接
d = u2.connect_usb('emulator-5554')
这里只需要填写你的设备的序列号即可
具体情况具体应对
如果运行之后出现以下情况则说明连接成功
{'displaySizeDpY': 640, 'currentPackageName': 'com.android.launcher3', 'sdkInt': 22, 'displaySizeDpX': 360, 'productName': 'm2', 'displayWidth': 540, 'screenOn': True, 'displayHeight': 960, 'naturalOrientation': True, 'displayRotation': 0}
也可以对natural0rientation做判断,如果为True则表示连接成功,反之则表示失败.
这样的话就可以真正的开始自动化测试了!!
2. 操作
提示: 最好到https://github.com/openatx/uiautomator2这里先熟悉基本操作的函数(其实里面写的也都是最基本操作)
在这里我就不一一介绍它的函数了,直接上代码与逻辑.
2.1 首先先确保你已经连上了你的设备(无论哪个),这样才能进行接下来的操作
2.2 在上一篇文章里已经介绍了weditor的使用,在输入框内输入你已连接设备的序列号或者ip地址,然后点击连接,如果长时间页面没有出现连接设备的当前页面时可以点击左下角的Home键它也会连接你的设备
注意: 一次只能连接一个设备
2.3 如果页面出现的连接设备的当前设备之后,那么只需要会这么一个步骤你就可以开始的自动化测试了,当然前提是你得熟悉uiautomator2的基本操作
2.4 如上图所示,如果你想点击某个点的时候,只需要先在这里获取这个点的位置,就可以很轻松的实现操作了
2.5 就这样,你已基本掌握了uiautomator2的使用方法了
项目已上传https://github.com/zhixideyu/uiautomator2---FaceBook
---------------------
作者:窒息的鱼
来源:CSDN
原文:https://blog.csdn.net/qq_41664526/article/details/81103453
版权声明:本文为博主原创文章,转载请附上博文链接!
使用uiautomator2自动化测试app(二)------操作篇的更多相关文章
- Mysql优化(出自官方文档) - 第十二篇(优化锁操作篇)
Mysql优化(出自官方文档) - 第十二篇(优化锁操作篇) 目录 Mysql优化(出自官方文档) - 第十二篇(优化锁操作篇) 1 Internal Locking Methods Row-Leve ...
- Appium移动自动化测试(二)--安装Android开发环境(转)
Appium移动自动化测试(二)--安装Android开发环境 2015-06-04 17:30 by 虫师, 35299 阅读, 23 评论, 收藏, 编辑 继续Appium环境的搭建. 第二节 ...
- 【如何快速的开发一个完整的iOS直播app】(原理篇)
原文转自:袁峥Seemygo 感谢分享.自我学习 目录 [如何快速的开发一个完整的iOS直播app](原理篇) [如何快速的开发一个完整的iOS直播app](播放篇) [如何快速的开发一个完整的 ...
- iOS:app直播---采集篇
[如何快速的开发一个完整的iOS直播app](采集篇) 转载自简书@袁峥Seemygo:http://www.jianshu.com/p/c71bfda055fa 前言 开发一款直播app,首先需要采 ...
- iOS:app直播---原理篇
[如何快速的开发一个完整的iOS直播app](原理篇) 转载自简书@袁峥Seemygo:http://www.jianshu.com/p/7b2f1df74420 一.个人见解(直播难与易) 直播 ...
- python自动化测试应用-第6篇(WEB测试)--Selenium元素篇
篇6 python自动化测试应用-Selenium基础篇 --lamecho 1.1概要 大家好!我是lamecho(辣么丑),上一篇我们搭建好p ...
- .NET Core快速入门教程 2、我的第一个.NET Core App(Windows篇)
一.前言 本篇开发环境?1.操作系统: Windows 10 X642.SDK: .NET Core 2.0 Preview 二.安装 .NET Core SDK 1.下载 .NET Core下载地址 ...
- .NET Core快速入门教程 3、我的第一个.NET Core App (CentOS篇)
一.前言 本篇开发环境?1.操作系统:CentOS7(因为ken比较偏爱CentOS7)2.SDK版本:.NET Core 2.0 Preview 你可能需要的前置知识1.了解如何通过Hyper-V安 ...
- Sass进阶之路,之二(进阶篇)
Sass之二(进阶篇) 1. 数据类型 1.1 Number 数字类型,小数类型,带有像素单位的数字类型,全部都属于Number类型 Number类型详情请点击这里,下面是小例子 1.$n1: 1.2 ...
随机推荐
- IOS 微信、QQ、叮叮等APP虚拟定位 实在太好用了
前不久爱思助手更新了最新版本:V7.96,同时更新了好几个功能,包括给ios设备修改虚拟定位功能,想要给手机修改,我们需要电脑下载爱思助手最新版本V7.96,数据线连接电脑修改. 借助爱思助手的虚拟定 ...
- 解决pip安装时速度慢的问题
http://blog.csdn.net/wukai0909/article/details/62427437 国内源: 新版ubuntu要求使用https源,要注意. 清华:https://py ...
- Golang: 解析JSON数据之一
JSON 作为目前最流行的数据传输格式, 相信每个程序员都跟它打过交道吧.使用 Go 语言时,也不可避免的要操作 JSON 数据,令人惊喜的是,Go 内置了序列化和反序列化 JSON 的功能,今天就来 ...
- 2015年br运维操作归档
归档2015年在br做运维时常用的命令,主要梳理出log的过滤操作. 对于日志文本的处理,常见还是sed和awk,具体如下: 统计ip访问量: cat nginx.log |awk '{print $ ...
- 使用javac命令编译Servlet,并将其放入tomcat中运行
首先我在桌面上新建了一个txt文件,编辑内容(内容来自菜鸟教程)为: // 导入必需的 java 库 import java.io.*; import javax.servlet.*; import ...
- Jenkins实用发布与回滚PHP项目生产实践
目录 1.概述 2.项目实践 2.1.环境说明 2.2.Jenkins配置 2.2.1.修改Jenkins的运行用户 2.2.2.配置Jenkins用户和Gitlab的ssh-key 2.2.3.Je ...
- PS用户配置服务连接出错
PS用户配置服务连接出错 [2019-07-30 14:58:25.475]-[INFO ]-[xxxx.profileserver.service.ProfileServerImpl:1430][1 ...
- JVM&G1 GC 学习笔记(一)
在入门学习JVM的过程中,我们需要先了解关于JVM的知识中有哪些关键词或关键术语,今天在看完书后我想记录下来. Xms64mb 虚拟机初始化时设置内存大小为64mb Xmx256mb 设定虚拟 ...
- C语言printf函数转换说明表及其修饰符表
请求printf()函数打印数据的指令要与打印数据的类型匹配. 例如, 打印整数时使用%d, 打印字符是使用%c. 这些符号被称为转换说明, 他们指定了数据转换称可显示的形式. 1. ANSI C标准 ...
- HDU3572 Task Schedule(最大流+构图思维)
题意: 有N个任务M个机器,给每个任务i完成所花费的时间Pi且每个任务要在第Si天后开始,在第Ei天前结束,保证任务在(S,E)之间一定能完成. 每个机器在一天里只能运行一个任务,一个任务可以在中途更 ...