【airtest】自动化入门教程(三)Poco操作

目录

一、准备工作

1、创建一个pthon脚本

2、光标位置 2、选择Android 3、选择yes

二、定位元素

三、poco基于设备/屏幕  方式

1、poco.click( (x,y))基于屏幕点击相对坐标为x,y的位置

2、poco.get_screen_size()

3、poco.swipe(v1,v2)基于屏幕从v1位置滑到到v2

 4、scroll("垂直/水平",百分比) 滑动

四、poco定位到元素方式 

1、ele = poco(属性名=属性值〕

2、ele.click ===> poco(属性名=属性值).click()点击指定元素

3、ele.attr(属性名)根据属性名获取元素指定的属性值

4、ele.setattr(属性名,属性值)对指定元素的属性重新赋值

5、ele.set_text("文本") 对指定元素设置文本值

6、ele.get_text()获取元素的text属性值

7、ele.swipe(坐标/方向)将指定元素滑到到某个位置/方向

8、ele.exists(判断元素是否存在)

五、附录

1、运行注意事项

 1.1 运行代码注意这三个不要开启,记得关闭

1.2 运行时这里需要时Andriod


前言:是一款基于UI控件识别的自动化测试框架,目前支持Unity3D/cocos2dx-*/Android原生app/iOS原生app/微信小程序,也可以在其他引擎中自行接入poco-sdk来使用

一、准备工作

1、创建一个pthon脚本

2、光标位置 2、选择Android 3、选择yes

from poco.drivers.android.uiautomation import AndroidUiautomationPoco
poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)

 

二、定位元素

 Poco底层 是uiautomator实现的   下图元素定位方式本教程第一篇文章有描述

三、poco基于设备/屏幕  方式

poco.pocofw module — poco 1.0 文档

1、poco.click( (x,y))基于屏幕点击相对坐标为x,y的位置

# -*- encoding=utf8 -*-
__author__ = "cheng"from airtest.core.api import *
from airtest.cli.parser import cli_setupif not cli_setup():auto_setup(__file__, logdir=True, devices=["android://127.0.0.1:5037/127.0.0.1:7555?cap_method=ADBCAP&touch_method=MAXTOUCH&",])from poco.drivers.android.uiautomation import AndroidUiautomationPoco
poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)# script content
print("start...")
poco.click([0.362,0.507])

2、poco.get_screen_size()

print(poco.get_screen_size())

3、poco.swipe(v1,v2)基于屏幕从v1位置滑到到v2

poco.swipe([0.36,0.87],[0.43,0.34]) # 点到点
poco.swipe([0.36,0.87],direction=[0,0.3]) # 点与方向

 4、scroll("垂直/水平",百分比) 滑动

poco.scroll("vertical", 0.5) # 水平 
poco.scroll("horizontal", 0.5) # 垂直

四、poco定位到元素方式 

poco.proxy module — poco 1.0 文档

1、ele = poco(属性名=属性值〕

如果找到多个元素是一个列表﹒如果能定位到唯一元素直接是个元素对象

poco(text="文档扫描").click()  # 定位到一个元素就是直接操作的对象
print(len(poco(name="com.youdao.note:id/item_top_view_image")))  # 定位到多个元素就是列表[]

2、ele.click ===> poco(属性名=属性值).click()点击指定元素

poco(text="文档扫描").click()  # 定位到一个元素就是直接操作的对象

3、ele.attr(属性名)根据属性名获取元素指定的属性值

print(poco(text="文档扫描").attr("text"))  # 获取文本属性

4、ele.setattr(属性名,属性值)对指定元素的属性重新赋值

poco(text="搜索笔记").setattr("text", "New Text") 

5、ele.set_text("文本") 对指定元素设置文本值

poco(text="搜索笔记").set_text("搜索内容")

这个设置文本值,后续没有回车等动作 

6、ele.get_text()获取元素的text属性值

print(poco(text="文档扫描").get_text())  # 获取文本属性

7、ele.swipe(坐标/方向)将指定元素滑到到某个位置/方向

poco(text="没有更多了~").swipe([0.4,0.4])   # 坐标
poco(text="没有更多了~").swipe("up")   # 方向

8、ele.exists(判断元素是否存在)

print(poco(text="文档扫描").exists())  # 判断元素是否存在

五、附录

1、运行注意事项

 1.1 运行代码注意这三个不要开启,记得关闭

1.2 运行时这里需要时Andriod

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/267321.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python爬虫实战第二例【二】

零.前言: 本文章借鉴:Python爬虫实战(五):根据关键字爬取某度图片批量下载到本地(附上完整源码)_python爬虫下载图片-CSDN博客 大佬的文章里面有API的获取,在这里我就不赘述了。 一…

Vue2:路由的两种模式history模式和hash模式

一、情景说明 之前我们写的项目启动后,浏览器访问时,路径中会有个#/,会导致不够美观 因为一般的访问地址都是http://123.123.123.123/aaa/bbb这种形式 这一篇,就来解决这个问题 二、案例 1、hash模式 特点:#/后的…

Docker与虚拟机比较

在对比Docker和虚拟机前,先简单了解下虚拟化,明确Docker和虚拟机分别对应的虚拟化级别,然后对Docker和虚拟机进行比较。需要注意的是,Docker和虚拟机并没有什么可比性,而是Docker使用的容器技术和虚拟机使用的虚拟化技…

微信小程序触屏事件_上划下划事件

一、微信小程序触屏事件 bindtouchstart:手指触摸动作开始 bindtouchmove:手指触摸后移动 bindend:手指触摸动作结束 属性类型说明touchesArray触摸事件,当前停留在屏幕中的触摸点信息的数组 Touch 对象 属性类型说明identi…

《HelloGitHub》第 95 期

兴趣是最好的老师,HelloGitHub 让你对编程感兴趣! 简介 HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。 这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、Java、Go、C/C、Swift...让你在短时间内…

DDR5内存相比DDR4内存的优势和区别?选择哪一个服务器内存配置能避免丢包和延迟高?

根据幻兽帕鲁服务器的实际案例分析,选择合适的DDR4与DDR5内存大小以避免丢包和延迟高,需要考虑以下几个方面: 性能与延迟:DDR5内存相比DDR4在传输速率、带宽、工作电压等方面都有显著提升,但同时也伴随着更高的延迟。D…

Javaweb之SpringBootWeb案例之自动配置的两种常见方案的详细解析

3.2.2.2 方案一 ComponentScan组件扫描 SpringBootApplication ComponentScan({"com.itheima","com.example"}) //指定要扫描的包 public class SpringbootWebConfig2Application {public static void main(String[] args) {SpringApplication.run(Sprin…

Wireless LAN演进整理以及STA与AP之间的关联行为

一、WLAN standard WLAN标准也是由电机电子工程师学会 (IEEE, Electrical and Electronics Engineers)组织制定的,WLAN标准统称为802.11 二、802.11传输标准 IEEE标准 名称 年份 频道 最高传输速率 调变方式 802.11 WIFI 0 1997 2.4 GHz 2 Mbps DSSS 8…

STM32------分析GPIO寄存器

一、初始LED原理图 共阴极led LED发光二极管,需要有电流通过才能点亮,当有电压差就会产生电流 二极管两端的电压差超过2.7v就会有电流通过 电阻的作用 由于公式IV/R 不加电阻容易造成瞬间电流无穷大 发光二极管工作电流为10-20MA 3.3v / 1kΩ 3.…

如何在群晖Docker运行本地聊天机器人并结合内网穿透发布到公网访问

文章目录 1. 拉取相关的Docker镜像2. 运行Ollama 镜像3. 运行Chatbot Ollama镜像4. 本地访问5. 群晖安装Cpolar6. 配置公网地址7. 公网访问8. 固定公网地址 随着ChatGPT 和open Sora 的热度剧增,大语言模型时代,开启了AI新篇章,大语言模型的应用非常广泛,包括聊天机…

获取linuxIP、内存、cpu、磁盘IO等信息的Shell脚本及其讲解

shell基础知识 1.grep grep是一个在Unix和Unix-like系统上使用的命令行工具,用于在文本文件中搜索匹配指定模式的行。它的名字来自于"global regular expression print"(全局正则表达式打印)的缩写。grep的基本用法是通过指定一个…

Redis之十:Spring Data Redis --- CrudRepository方式

SpringData Redis CrudRepository方式 Spring Data Redis 的 CrudRepository 是 Spring Data 框架中用于提供基础 CRUD(创建、读取、更新和删除)操作的一个接口。在与 Redis 集成时,尽管 Redis 是一个键值存储系统,并没有像关系型…

iOS卡顿原因与优化

iOS卡顿原因与优化 1. 卡顿简介 卡顿: 指用户在使用过程中出现了一段时间的阻塞,使得用户在这一段时间内无法进行操作,屏幕上的内容也没有任何的变化。 卡顿作为App的重要性能指标,不仅影响着用户体验,更关系到用户留…

零拷贝技术深入分析

一、零拷贝 在前面的文章“深浅拷贝、COW及零拷贝”中对零拷贝进行过分析,但没有举例子,也没有深入进行展开分析。本文将结合实际的例程对零拷贝进行更深入的分析和说明。 在传统的IO操作中,以文件通过网络传输为例 ,一般会经历以…

深度学习 精选笔记(4)线性神经网络-交叉熵回归与Softmax 回归

学习参考: 动手学深度学习2.0Deep-Learning-with-TensorFlow-bookpytorchlightning ①如有冒犯、请联系侵删。 ②已写完的笔记文章会不定时一直修订修改(删、改、增),以达到集多方教程的精华于一文的目的。 ③非常推荐上面(学习参考&#x…

并查集(Disjoint Set)

目录 1.定义 2.初始化 3.查找 4.合并 4.1.按秩合并(启发式合并) 5.例题 题目描述 输入格式 输出格式 输入输出样例 说明/提示 1.定义 并查集,也称为不相交集合数据结构,是一种用于管理元素分组以及查找元素所属组的数…

MWC 2024丨世界移动通信大会圆满结束,美格智能5G-A、端侧AI解决方案掀热潮

2月26日—29日,全球瞩目的2024世界移动通信大会(MWC)在西班牙巴塞罗那隆重举办。本届MWC以“未来先行”为主题,围绕“超越5G”、“智联万物”、“AI人性化”等话题展开,吸引了全球2400多家电信运营商、通信设备和终端制…

亿道信息新品EM-T195轻薄型工业平板,隆重登场!

EM-T195是一款轻巧但坚固的平板电脑,仅 650克重、10.5mm毫米厚,即使没有额外的便携配件进行辅助,您也可以轻松将其长时间随身携带。耐用性外壳完全密封,防尘防潮;出色的坚固性和可靠性,使T195天生适合在苛刻…

政府采购标书制作的要点解析

导语:政府采购是政府为满足公共利益,按照法定程序和标准,通过招标、竞争性谈判等方式,购买商品、工程和服务的行为。标书作为政府采购活动中的重要文件,其制作质量直接影响到项目的顺利进行。本文将围绕政府采购标书制…

导览系统厂家|景区电子导览|手绘地图|AR导览|语音导览系统

随着元宇宙、VR、AR等新技术的快速发展,旅游服务也更加多元化、智能化。景区导览系统作为旅游服务的重要组成部分,其形式更加多元化智能化。智能导览系统作为一种新的服务方式,能够为游客提供更加便捷的旅游服务和游览体验,也逐渐…