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样式结构是下图

实际代码是下图

相关推荐
测试老哥3 小时前
pytest+requests+allure自动化测试接入Jenkins学习
自动化测试·软件测试·学习·测试工具·职场和发展·jenkins·pytest
Mike_Wuzy16 小时前
【音频信号发生器】基本应用
测试工具
程序员三藏1 天前
Selenium+python自动化测试:解决无法启动IE浏览器及报错问题
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
Warren981 天前
软件测试-Selenium学习笔记
java·javascript·笔记·学习·selenium·测试工具·安全
zzc9211 天前
Wireshark获取数据传输的码元速率
网络·测试工具·wifi·wireshark·路由器·802.11n·物理层参数
小丁爱养花1 天前
接口性能测试工具 - JMeter
测试工具·jmeter
甄超锋2 天前
python sqlite3模块
jvm·数据库·python·测试工具·django·sqlite·flask
中草药z2 天前
【自动化测试】Selenium详解-WebUI自动化测试
前端·功能测试·selenium·自动化·html·web·测试
zzc9213 天前
TLSv1.2协议与TCP/UDP协议传输数据内容差异
网络·测试工具·安全·wireshark·ssl·密钥·tlsv1.2
Jinkxs3 天前
告别“测试滞后”:AI实时测试工具在敏捷开发中的落地经验
人工智能·测试工具·敏捷流程