appium python 點擊坐標 tap


appium python 點擊坐標 tap


有時候定位元素的時候,你使出了十八班武藝還是定位不到,怎么辦呢?(面試經常會問)
那就拿出絕招:點元素所在位置的坐標

tap用法

1.tap是模擬手指點擊,一般頁面上元素
的語法有兩個參數,第一個是positions,是list類型最多五個點,duration是持續時間,單位毫秒

tap(self, positions, duration=None):

    Taps on an particular place with up to five fingers, holding for a certain time
    
    模擬手指點擊(最多五個手指),可設置按住時間長度(毫秒)
    
    :Args:
    
    - positions - list類型,里面對象是元組,最多五個。如:[(100, 20), (100, 60)]
    
    - duration - 持續時間,單位毫秒,如:500
    
    :Usage:
    
    driver.tap([(100, 20), (100, 60), (100, 100)], 500)

 

坐標定位

1.如下圖定位"去看看"這個按鈕的坐標,可以看到右側bonds屬性:[374,831][654,906]

 

 2.點右上角"搜索"按鈕,查看bonds屬性:[615,52][690,146]

 

 

參考案例

# coding:utf-8
from appium import webdriver
from time import sleep
desired_caps = {
                'platformName': 'Android',
                'deviceName': '127.0.0.1:62001',
                'platformVersion': '4.4.2',
                'appPackage': 'com.baidu.yuedu',
                'appActivity': 'com.baidu.yuedu.splash.SplashActivity'
                }
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

sleep(5)
# 點彈出框去看看
driver.tap([(374, 831), (654, 906)], 500)

# 返回上一頁
driver.back()
sleep(2)

# 點右上角搜素按鈕
driver.tap([(615, 52), (690, 146)], 500)

弊端

通過坐標定位是元素定位的下下下策,實在沒辦法才用這個,另外如果換了手機分辨率,這個坐標就不能寫死了,得算出所在屏幕的比例。

 

 

原文地址https://www.cnblogs.com/yoyoketang/p/7778077.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM