移动端测试比较常遇到toast类型的提示信息,那么对于这类信息我们要怎么获取呢,让我细细道来:

首先,获取toast信息要注意以下几点:

  1. 必须是Uiautomator2框架,设备配置参数中设置
    "automationName": "UiAutomator2"
  2. 需使用xpath定位表达式查找元素
  3. 只能使用等待元素存在

****************下面就是方法啦*********************

第一种方法:根据文本信息内容通过xpath查找后进行对比

from selenium.webdriver.support import expected_conditions as EC
toast_msg
= "密码错误,请重新输入" loc = (MobileBy.XPATH, '//*[contains(@text(),"{}")]'.format(toast_msg)) toast_ele = WebDriverWait(self.driver,5,0.01).until(EC.presence_of_element_located(loc)) # 断言 assert toast_ele.text == "密码错误,请重新输入"

 

第二种方法:直接获取toast文本信息后再进行对比

from selenium.webdriver.support import expected_conditions as EC

loc = (MobileBy.XPATH, "//*[@class='android.widget.Toast']")
toast_ele = WebDriverWait(self.driver,5,0.01).until(EC.presence_of_element_located(loc))
# 断言
assert toast_ele.text == "密码错误,请重新输入"

 

亲测,第二种方法比第一种更灵活,可以根据自己的使用场景自行选择使用哪种方法。小窍门:封装更方便。

 

 

做一棵小草,谁也撼动不了………

 

posted on 2020-12-25 16:22  小草小草随风飘摇  阅读(377)  评论(0编辑  收藏  举报