toast弹窗在自动化元素定位中属于非常特殊的场景。
因为它是一个临时弹窗,很快就会消失掉,极难使用uiautomatorviewer工具截图到它。
如果是在浏览器中,我们还能通过暂停source资源进行定位;但是在Android环境中,工具定位无法实现,并且我们不知道它属于什么类型的元素,有什么属性,只能肉眼看到它的文本内容,因此我们可以尝试使用Xpath结合文本进行模糊匹配,
假设此时网络异常,弹出一个临时窗口提示【网络断开连接】,定位方式如下:
toast_element = driver.find_element_by_xpath('//*[contains(@text, "网络断开连接")]')