python 怎样获取toast?

toast是什么?

想要获取toast的小伙伴们,肯定知道这个是一个什么玩意,例行还是加一个图,加以解释,下图的就是传说中的toast,它有一个特点,出现时间特别短,很难通过定位元素去获取这个toast。

不能通过明确的元素定位来获取,那要怎么获取到toast呢?在做app自动化的时候,toast出现率非常高,所以必须要获取到toast,方便后面的断言。那要怎么通过什么方式获取呢?

答案就是:采用Xpath + text 进行定位

python -appium -真机 是怎样工作的?

知道通过什么方式获取之前,我们还需要知道 python  -》appium + 真机或模拟机 是怎样工作的?

需要获取到toast的前提条件:

1.安卓版本要在5.0以上

2.设置  desired_caps['automationName'] = 'Uiautomator2'

3.判断toast是否存在:presence_of_element_located(注意不能使用visibility_of_element_located)

检查是否必须的两个文件:

在模拟器或真机会生成两个用来获取toast的文件,检查这两个文件,证明已经生成这两个文件

贴上最后的实现的代码:如果toast出现的时间很短,需要将等待时间的轮询的时间调小

WebDriverWait(driver, 8, 0.2).until(EC.presence_of_element_located((MobileBy.XPATH, '//*[contains(@text,"xxxx")]')))

最后给大家一个提示:前置条件都设置好了,模拟器或真机也有那两个获取toast的文件了,就要检查写的toast提示信息对不对,一个字都不能错啊,不然找不到的,我就是因为一个文字写错,纠结了好几天都不知道是什么原因,泪奔,终于有人指出了我的问题,改好就找到了。

猜你喜欢

转载自www.cnblogs.com/cuitang/p/10165729.html
今日推荐