【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.pswp.cn/news/714296.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/714296.shtml
英文地址,請注明出處:http://en.pswp.cn/news/714296.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

02.剛性事務

剛性事務 1.DTP模型 X/Open組織介紹 X/OPEN是一個組織(現在的open group)X/Open國際聯盟有限公司是一個歐洲基金會,它的建立是為了向UNIX環境提供標準。它主要的目標是促進對UNIX語言、接口、網絡和應用的開放式系統協議的制定。它還促進在…

初識C語言—常見關鍵字

變量的命名最好有意義 名字必須是字母&#xff0c;數字&#xff0c;下劃線組成&#xff0c;不能有特殊字符&#xff0c;同時不能以數字開頭 變量名不能是關鍵字 typedef---類型定義&#xff0c;類型重命名 #include <stdio.h>typedef unsigned int uint; //將unsigne…

ubuntu20.04設置docker容器開機自啟動

ubuntu20.04設置docker容器開機自啟動 1 docker自動啟動2 容器設置自動啟動3 容器自啟動失敗處理 1 docker自動啟動 &#xff08;1&#xff09;查看已啟動的服務 $ sudo systemctl list-units --typeservice此命令會列出所有當前加載的服務單元。默認情況下&#xff0c;此命令…

龍蜥Anolis 8.4 安裝 salt-stack

Python3 安裝 sudo dnf install python3 -y Install SaltStack Yum Repository sudo dnf install -y https://repo.saltstack.com/py3/redhat/salt-py3-repo-latest.el8.noarch.rpm sudo dnf makecache sudo dnf -y update 安裝Salt-stack sudo dnf install -y salt-master …

Python自動化測試基礎必備知識點總結

一、自動化測試的概念 性能系統負載能力穩定性過載操作下的系統瓶頸自動化測試&#xff0c;使用程序代替人工&#xff0c;可以提高測試效率性&#xff0c;自動化測試能自動化使用代碼模擬大量用戶&#xff0c;讓用戶請求多頁和多用戶并發請求收集參數&#xff0c;并對系統負載…

待做事情哦

單點登錄&#xff1a; 搞懂單點登錄SSO&#xff0c;基于SpringBootJWT實現單點登錄解決方案-阿里云開發者社區 (aliyun.com)

設計模式七:責任鏈模式

文章目錄 1、責任鏈模式2、spring中的責任鏈模式Spring InterceptorServlet FilterNetty 1、責任鏈模式 責任鏈模式為請求創建了一個接收者對象的鏈&#xff0c;在這種模式下&#xff0c;通常每個節點都包含對另一個節點者的引用。每個節點針對請求&#xff0c;處理自己感興趣…

openGauss學習筆記-233 openGauss性能調優-系統調優-資源負載管理-資源管理準備-啟動資源負載管理功能

文章目錄 openGauss學習筆記-233 openGauss性能調優-系統調優-資源負載管理-資源管理準備-啟動資源負載管理功能233.1 背景信息233.2 前提條件233.3 操作步驟 openGauss學習筆記-233 openGauss性能調優-系統調優-資源負載管理-資源管理準備-啟動資源負載管理功能 233.1 背景信…

輕松解決電腦卡頓,CleanMyMac X2024讓你的Mac電腦重回巔峰性能!

在當今這個信息爆炸的時代&#xff0c;我們的電腦往往會因為安裝了過多的軟件、積累了太多的垃圾文件以及運行緩慢而變得卡頓、不流暢。然而&#xff0c;CleanMyMac X2024的出現&#xff0c;將為你解決這些問題&#xff0c;讓你的電腦重獲新生&#xff01; CleanMyMac X2024全新…

java的JDK選擇和在win11的安裝與配置

一.背景 還是公司安排的師帶徒的任務。自己也回頭看看。 二.JDK的選擇 開發的版本java1.8。所以準備使用JDK8。 1.JDK有誰在給我們提供呢&#xff1f; 我以前知道的是sun、RedHat、Oracle、IBM。 我以前一般都是去sun的網站下載&#xff0c;后來被Oracle收購后去的Oracle…

前端導出word文件的多種方式、前端導出excel文件

文章目錄 純前借助word模板端導出word文件 &#xff08;推薦&#xff09;使用模板導出 前端通過模板字符串導出word文件前端導出 excel文件&#xff0c;node-xlsx導出文件&#xff0c;行列合并 純前借助word模板端導出word文件 &#xff08;推薦&#xff09; 先看效果&#xf…

nginx如何配置命令啟動

我安裝好nginx后&#xff0c;發現不能使用systemctl start nginx或者systemctl stop nginx來控制啟停 解決方法如下 首先要建一個nginx.pid的文件 一般是建在 /var/run/這個路徑下面 sudo touch /var/run/nginx.pid 添加權限 sudo chmod 644 /var/run/nginx.pid可以進入到…

springboot 定時任務備份mysql數據庫

記錄在Linux 系統上定時備份MySQL數據庫 1、在代碼中添加備份 package org.jeecg.modules.xczxhhr.job;import lombok.extern.slf4j.Slf4j; import org.quartz.Job; import org.quartz.JobExecutionContext;import java.io.BufferedReader; import java.io.File; import java…

數據結構-----反射

文章目錄 反射1.定義2 用途(了解)3 反射基本信息4 反射相關的類&#xff08;重要&#xff09;4.1 Class類(反射機制的起源 )4.1.1 Class類中的相關方法(方法的使用方法在后邊的示例當中) 4.2 反射示例4.2.1 獲得Class對象的三種方式4.2.2 反射的使用 5、反射優點和缺點6 重點總…

雙周回顧#005 - 零

一件悲傷的事實&#xff0c;這兩周&#xff0c;成長值為零&#xff5e;&#xff5e; 從大數據部門臨時抽調到互聯網部門&#xff0c;支援重構的“配置下單”項目。 一個變種的低代碼架構設計&#xff0c;唯一比較有意思的是它的業務組件的設計與校驗設計&#xff0c;算是學習…

怎么把人物從圖中摳出?分享幾種好用的摳圖方法

在日常生活中&#xff0c;我們時常需要將人物從繁雜的背景中優雅地提取出來&#xff0c;無論是為了制作一張精美的證件照&#xff0c;還是為了設計一幅引人注目的海報或宣傳畫。然而&#xff0c;對于許多非專業人士來說&#xff0c;這仿佛是一場與細節的捉迷藏游戲&#xff0c;…

MySQL深入——23

主機內存只有100G&#xff0c;現在對一個200G的大表進行掃描&#xff0c;會不會把數據庫的內存用完。 對大表做全表掃描對Sever層的影響 假設現對一個200G的InnoDB表db1&#xff0c;做一個全表掃描&#xff0c;當然要把掃描結果保存到客戶端。 InnoDB的數據時保存在主鍵索引…

數據結構從入門到精通——順序表

順序表 前言一、線性表二、順序表2.1概念及結構2.2 接口實現2.3 數組相關面試題2.4 順序表的問題及思考 三、順序表具體實現代碼順序表的初始化順序表的銷毀順序表的打印順序表的增容順序表的頭部/尾部插入順序表的頭部/尾部刪除指定位置之前插入數據和刪除指定位置數據順序表元…

Linux如何查看端口是否占用

在Linux中&#xff0c;有多種方法可以用來檢查端口是否被占用。以下是一些常用的命令&#xff1a; netstat&#xff1a;這是一個非常通用的命令&#xff0c;可以用來查看所有端口的使用情況。如果你想查找特定的端口是否被占用&#xff0c;可以使用netstat命令配合grep。例如&…

【MySQL】DQL

DQL&#xff08;數據查詢語言&#xff09;用于在MySQL數據庫中執行數據查詢操作。它主要包括SELECT語句&#xff0c;用于從表中檢索數據。 0. 基本語法 SELECT 字段列表 FROM 表名列表 WHERE 條件列表 GROUP BY 分組字段列表 HAVING 分組后條件列表 ORDER BY 排序字段列表 …