在使用Appium中的UI 過程中,因爲有些彈出窗口(Popup)無法定位。
而模擬場景又必須來定位這些元素,本人在實踐中摸索了一種方法。
環境 Appnium, python3.8, Pycharm開發環境
主要思路:把定位調整到基礎的窗口,然後利用pycharm的調試功能和driver.find_element_by_class_name的方法來定位
測試場景是一款證券app,彈出的是登錄窗口。
步驟簡述:
1. 設置斷點
2.在斷點處,可以利用pycharm的 Evaluate功能來定位彈出窗口的元素。
根據窗口上各種class,比如android.widget.EditText, android.widget.Button. 上圖就是筆者利用Button類定位到登錄按鈕。
如果是多個元素,利用find_elements返回集合對象。比如下面代碼。
el3=self.driver.find_elements_by_class_name("android.widget.EditText")[0] el3.send_keys(userid) el4=self.driver.find_elements_by_class_name("android.widget.EditText")[1] el4.send_keys(passwd)