一、测试场景痛点与 XPath “或” 逻辑的价值
作为测试工程师,你是否遇到过以下困境?
- 需求 1:在百度搜索结果页,需要同时定位自然搜索结果的标题(位于
<h3>
标签)和广告结果的标题(位于带有class="c-ad"
的<div>
标签)。 - 需求 2:页面中存在多个相似结构的模块,需排除底部版权信息或广告干扰元素。
- 需求 3:元素属性动态变化(如
id
或class
包含不同前缀),需动态匹配定位。
XPath 的|
运算符和or
条件能轻松解决这些问题,让你的测试脚本更简洁、健壮。
二、XPath “或” 逻辑核心语法解析
-
|
运算符:合并多路径结果
用于将多个 XPath 路径的结果合并为一个集合。
示例:在百度搜索页,同时定位自然搜索结果标题和广告标题:xpath
//h3[@class="t"]/a | //div[@class="c-ad"]//h3/a