appium---定位toast


  看到標題有些小伙伴肯定懵了,什么是toast?

toast

toast屬於一種輕量級的反饋,常常以小彈框的形式出現,一般出現1到3秒會自動消失,可以出現在屏幕上中下任意位置。那么toast怎么進定位呢?我們先看下toast在app中是怎么顯示的

app中的toast

我們打開淘寶,進入淘寶后,然后點擊返回按鈕。淘寶頁面底部會出現一個彈框,這就是toast

 

定位toast

知道什么是toast了,那么怎么定位toast呢?

定位toast有兩個前置條件:

1、appium必須是1.7以上的版本才可以

2、在啟動appium的參數中加入 'automationName':"uiautomator2" 

這里返回的是text文本,安靜這里選擇的是文本定位

# coding:utf-8
from appium import webdriver
import time
desired_caps = {
                 'platformName': 'Android',  # 測試版本
                 'deviceName': 'emulator-5554',   # 設備名
                 'platformVersion': '5.1.1', # 系統版本
                "appPackage": "com.taobao.taobao",   # app包名
                "appActivity": "com.taobao.tao.welcome.Welcome",   # 啟動launch Activity
                "noReset": True,  # 不清空數據
                "unicodeKeyboard": True,    # 使用Unicode編碼方式發送字符串
                "resetKeyboard": True,      # 鍵盤隱藏起來
                'automationName':"uiautomator2"
                        }
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
time.sleep(10)
# 點擊返回按鈕
driver.back()
text = '再按一次'
# text模糊定位
element = driver.find_element_by_xpath('//*[contains(@text, "%s")]'%text)
print("toast內容:%s" % element.text)


-----------結果---------
toast內容:再按一次返回鍵退出手機淘寶

這里會發現已經成功定位到了,但是可能有時候因為網絡問題,或者其他原因,導致出現了,但是卻沒有定位到,我們可以通過顯示等待的方法,然后循環去讀取元素坐標。

 

 

 

安靜寫的只是其中的一種方法,如果有更好的方法,可以下方留言,共同學習。感謝關注

 

 

 


免責聲明!

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



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