首页 > 闲鱼新闻
简述Python、Anaconda、virtualenv和Miniconda之间的区别
21-07-28闲鱼新闻围观568次
简介 点击“Python爬虫与数据深入”,进行关注回复“这本书”收获收获Python从入门到进阶共10本电子书今日鸡汤别君去兮何时还?且放白鹿青崖间。须行即骑访名山。1。前言群控,相信大多数人都不会承认!印
点击“Python爬虫与数据深入”,进行关注
添加微信,免费试用软件
复制微信号
回复“这本书”收获收获Python从入门到进阶共10本电子书
今
日
鸡
汤
别君去兮何时还?且放白鹿青崖间。须行即骑访名山。
1。前言
群控,相信大多数人都不会承认!印象里是一台电脑控制多台设备完成的操作,更多的人把它和惠产绑定!
事实上,群控在自动化测试中也被广泛使用!接下来的几篇文章,我将带大家聊聊企业级自动化中,群控正确的使用姿势!
本篇先从基础篇开始,聊聊使用「Python + adb」命令如何写一个群控脚本
2。准备
在本机安装 Android 开发环境,保证 adb 被添加到环境变量
将准备好多台设备,使用数据线(或者通过 Hub)连接到电脑上
通过 adb devices 可以查看已经连接的所有设备
3。实战自动化群控以鱼应用程序的一次关键字搜索闲来,可包含:打开、点击到搜索界面、输入内容、点击搜索按钮下面通过7步来完成本操作1、获取目标应用的包名及初始化活动获取方式有很多种,主流方式包括:adb命令、解析APK、使用推荐APK、无故障服务这里使用adb命令这种方式
打开闲鱼App,在命令终端输入上面的命令,终端显示器包名及活动名称出来
2、通过adb命令获取所有在线的设备,通过输出内容,进行一次过滤,得到所有连接到PC端的设备
3、群控打开目标应用
遍历设备列表,使用 adb -s 设备 ID shell am start -W 命令分别打开目标应用
4、封装执行步骤方便管理设备,将每一步的操作都可以保存到YAML文件中,通过ID查找元素并点击、在输入内容分别执行、调用本地方法及输入参数这里对应: UI树控件、输入框元素并执行点击操作、保存UI树控件(界面变化了)、输入文本内容、查看搜索按钮并执行点击操作
需要不是,是为了提高群控的适配性,控件的实际坐标需要通过下面的步骤去获取:
导出界面的控件树
解析控件树XML文件,利用正则表达式得到目标控件的坐标值
计算出控件的中心点坐标
利用控件ID获取元素中心点坐标的实现代码如下:
5、设备部分是为了保证群控脚本执行不会产生干扰,在每个步骤之前,都应该将设备ID参数作为参数进行示例:将控件的界面控件树按照设备保存为的名称、点击界面和输入的命令传递相应的设备 ID 为入参
6、执行步骤
从 YAML 文件中读取执行步骤,遍历步骤集合,内部遍历设备列表,以保证每一个步骤,分别执行到每台设备上
感应,通过不同的操作,识别操作设备了
7、关闭应用当所有的完成之后,同样是关闭设备操作,利用 adb 命令去 App 分类
4。最后
本篇实现Python自动化群控最简单的实现方式,将和大家讨论更复杂的实现方式。
我已经将文中全部源码上传到后台,关注公众号后回复「qk」即可获得全部源码
如果你觉得文章还不错,请大家点赞、分享、留言,因为这将是我持续输出更多优质文章的最强动力!
- - - - - - - - - - 结尾 - - - - - - - - - -
期往精彩文章推荐:
手捧教你使用Flask搭建ES搜索引擎(实战篇)
简述Python、Anaconda、virtualenv和Miniconda之间的区别【进阶篇】Python+Go——带大家一起另寻途径提高计算性能
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行
/今日留言主题/
随便说一两句吧~~