

A元素://*[@text="搜索结果不存在"] 没有搜索到结果
B元素:(//*[@text="[笔记]这是一条笔记"])[1] 有搜索到结果,且取第一条
手机获取xpath元素时(示例为小红书搜索笔记),
如果A元素存在,那么B元素一定不存在,处理场景A,即没搜索到笔记,继续搜索下一条
如果B元素存在,那么A元素一定不存在,则处理场景B,即搜索到了笔记,去处理
传统思路:
try某个元素,执行,catch另一个元素,执行
优点:思路简单
缺点:元素不存在时等待时间长,约5秒,才会执行其他情景
个人新思路:
通过写xpath元素集合,获取元素信息的文本去处理不同场景
获取元素对象://*[@text="搜索结果不存在"] | (//*[@text="这是一条笔记"])[1]
获取手机元素信息:按text属性获取文本
判断文本是哪一种情况,然后去执行相应代码
优点:响应速度和正常获取到元素速度一样
缺点:逻辑稍微复杂了些