selenium已知一个元素定位同级别的另一个元素

1.需求与实际情况

看下图来举例

(1)需求

想点击test22(即序号-第9行)这一行中右边的"复制"这一按钮

(2)实际情况

只能通过id或者class定位到文件名这一列的元素,而操作这一列的元素是不能单独通过class、id或者其他什么样式定位到(因为整个列中:重命名、复制、删除这些个按钮都是一样的css样式)

2.解决方法

通过xpath来定位同级的元素。

即:driver.find_element(By.XPATH,"//a@class='test22这一元素对应的class'/..//a@class='test22这一行的"复制"对应的class'")

解释就是:"//a@class='test22这一元素对应的class'"-->这一步是定位到了test22所在的这一行;"/+两个点"-->回到test22的上一级元素;因为找到了test22的上一级此时再向下定位相同行的同级元素就是这一步-->"//a@class='test22这一行的"复制"对应的class'"

3.实例

实际的css样式结构是下图

实际代码是下图

相关推荐
freejackman1 天前
【工程化】从“单兵作战”到“多引擎架构”:基于门面模式的重构实战
大数据·数据库·hive·sql·测试工具·设计模式·架构
坐吃山猪1 天前
Python22-PostMan调试MCP
测试工具·postman·mcp
测试界的小码农2 天前
【 AI Agent 软件测试实战(05):任务规划与状态管理,让 Agent 学会拆解复杂测试任务】
人工智能·测试工具
和粒科技4 天前
热重分析仪TG 309 Libra Classic
测试工具
ClouGence5 天前
不搭 Selenium 或 Playwright,怎么测试公司的内网业务?
selenium·测试
螺丝钉tina10 天前
[Playwright] [02]常用命令与调试:Debug UI、Mode和 Trace Viewer
开发语言·javascript·测试工具·ui·自动化
梧桐16811 天前
14天、31个缺陷、28个测试脚本—用 Claude Code 完成第三方软件测试
人工智能·测试工具
mewowaBc11 天前
postman使用细则
测试工具·postman·偏差
光影62712 天前
Unittest单元测试基础速记
测试工具·单元测试·json·测试覆盖率
xie8810180212 天前
正则里的点号不匹配换行:多行模式的开关
运维·服务器·测试工具