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官方文档

相关推荐
霍格沃兹测试开发学社测试人社区3 小时前
MCP零基础学习(7)|实战指南:构建论文分析智能体
人工智能·测试工具
测试老哥11 小时前
如何用Postman做接口测试?
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
程序员杰哥2 天前
Jmeter+Jenkins接口压力测试持续集成
自动化测试·软件测试·python·测试工具·jmeter·jenkins·压力测试
信而泰XINERTEL2 天前
如何用Renix实现网络测试自动化: 从配置分离到多厂商设备支持
测试工具·网络测试仪·测试软件
软测进阶2 天前
【第三章】软件测试缺陷管理:从判断到回归的全流程实践指南
测试工具·bug·源代码管理
天才测试猿2 天前
测试用例如何评审?
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
郭天宇 abfore3 天前
Selenium
selenium·测试工具·web自动化测试
IT19953 天前
Wireshark笔记-DHCP流程与数据包解析
笔记·测试工具·wireshark
Python大数据分析@5 天前
selenium采集数据怎么应对反爬机制?
selenium·测试工具·网络爬虫
测试老哥6 天前
Jmeter自动化性能测试常见问题汇总
自动化测试·软件测试·测试工具·jmeter·接口测试·压力测试·性能测试