RobotFramework+appiumLibrary测试android实现“滑动页面判断元素是否存在”

时间:2024-03-19 11:19:33

在RF中,定位不在当前屏幕的元素,为了解决android测试中这个问题,我查阅了很多资料,看到web端测试有一个focus的关键字解决了这个问题,但是android没有找到相关的解决办法,没办法 ,我自己只能简单的使用for循环和判断实现了这个问题!

我的思路:

在for循环中,每次循环滑动一次、判断一次元素是否存在,如果元素存在就跳出循环,如果元素不存在就继续循环

1、我将元素存在封装起来,封装起来的关键字是“判断元素存在”,将结果放在变量${res}中

RobotFramework+appiumLibrary测试android实现“滑动页面判断元素是否存在”

2、在for循环中,循环次数可以多写几次,因为每个手机屏幕大小不一致,以最小屏幕的最多次数为准;

每次for循环中添加sleep时间,确保页面元素能够加载出来;

使用关键字Run Keyword And Return Status将元素是否存在的结果返回到${res}中;

使用run keyword if关键字执行不同情况,当元素存在时(即${res}=true),跳出循环停止滑动;当元素不存在时(即${res}=false),继续进行下一次循环滑动页面;

在for循环结束时,下面就可以对刚才寻找的元素进行操作了~

RobotFramework+appiumLibrary测试android实现“滑动页面判断元素是否存在”

PS:以上的方法解决了android端滑动页面查找元素的方法,不过还是有很多不足之处,可以继续优化,然后还没有想出来有什么更好的解决方法~在网上看到对rf的文章都比较少,对移动端android测试的文章更少,所以只能自己琢磨琢磨,希望以后有更好的解决方法吧~