问题
在做 UI 自动化时,使用 UI 自动化测试工具进行自动化测试,如何判断一个页面上元素是否存在?
有没有做过 UI 自动化测试,如何判断元素在页面上是否存在?
考察点
面试官想了解:
-
是否真的做过 UI 自动化测试
-
在做测试的时候遇到元素难定位的问题如何解决,如何判断元素在页面上是否存在?是否有自己的思考与总结
-
是否了解显式等待的用法
-
是否了解
find_elements()
的用法
技术点
涉及的技术点:
-
通过异常处理来判断元素是否存在
-
通过查找元素列表
find_elements()
判断元素是否存在 -
显式等待
回答
-
方法一:通过异常处理来判断元素是否存在,可以使用
try…except…
f 未找到元素的时候捕获这个异常 -
方法二:通过查找元素列表
find_elements()
判断元素是否存在,定义一个方法,如果元素列表大于 0 则元素存在,返回 True, 如果元素列表等于 0 则元素不存在,返回 False -
方法三:显式等待,结合 WebDriverWait 和 expected_conditions 判断(推荐)