selenium中xpath的用法大全

XPath的格式遵循XML路径语言规范,用于在XML/HTML文档中定位节点。以下是基本格式和常见用法:


1. 基本语法

  • 绝对路径 :从根节点开始,如 /html/body/div
  • 相对路径 :从当前节点开始,如 //div 表示查找所有div元素。

2. 常用表达式

(1) 通过标签名定位
复制代码
//div  # 查找所有div元素
(2) 通过属性定位
复制代码
//input[@id='username']  # 查找id为username的input元素
//a[@class='link']       # 查找class为link的a元素(注意:与CSS类名大小写敏感一致)
(3) 通过文本内容定位
复制代码
//a[text()='点击这里']  # 查找文本完全匹配的a元素
//span[contains(text(), '示例')]  # 查找包含特定文本的span元素
(4) 通过层级关系定位
复制代码
//div[@class='container']/p  # 查找class为container的div下的直接p子元素
//ul/li[1]  # 查找ul下的第一个li元素

3. 逻辑组合

  • AND/OR:结合多个条件。

    复制代码
    //button[@type='submit' and @class='primary']  # 同时满足两个条件
  • 通配符*表示任意标签,@*表示任意属性。

    复制代码
    //*[@id='header']  # 查找任意有id为header的元素

4. 注意事项

  • 大小写敏感 :与CSS类名类似,XPath中标签名和属性名是大小写敏感的(如//Div//div不同)。
  • 索引从1开始 :如//li[1]表示第一个li元素。

示例

复制代码
//form[@id='loginForm']//input[@name='email']  # 在loginForm表单内查找name为email的input

通过灵活组合上述语法,可以精确定位页面元素。如果需要更复杂的逻辑,可参考XPath官方文档

相关推荐
霍格沃兹测试学院-小舟畅学17 小时前
UI 测试的语义断言:Midscene aiAssert 比像素比对稳在哪、又会骗在哪
人工智能·测试工具
zuozewei18 小时前
附录 A:主流工具对比选型表
人工智能·测试工具
我的xiaodoujiao19 小时前
Django 基础知识详细图文教程 10-Django 模板引擎 3
后端·python·测试工具·django
霍格沃兹测试学院-小舟畅学21 小时前
Google 开源 ARTEMIS:AI Agent 如何接管 Android 真机测试?
人工智能·测试工具
Liaiyang6621 小时前
# 自研 AST 容错初筛工具:横向评测 Django、PyTorch、TensorFlow 三大开源 Python 框架异常收容风险
python·测试工具·自动化·开源软件·代码规范·devops·代码复审
霍格沃兹测试学院-小舟畅学1 天前
我用 AI 把 Swagger 变成 500 条 pytest 用例,回归从 3 天到 3 小时
人工智能·测试工具
奔跑中的小象2 天前
GuideLLM 压测实战指南:给大模型推理服务做一次完整 SLA 评估
测试工具·guidellm
cpolar技术支持2 天前
本地 Playwright 测试报告怎么远程复盘?Trace Viewer 跑起来后,用 cpolar 分享失败现场
前端·自动化测试·测试工具·cpolar·playwright
测试狗科研平台3 天前
材料热传导能力表征——热导率计算方法与流程解析
科技·测试工具·材料工程