Appium中对于弹出窗口(popup window)的元素如何定位(locate)
在使用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)