前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java selenium -父子、兄弟、相邻节点定位方式详解

Java selenium -父子、兄弟、相邻节点定位方式详解

原创
作者头像
Meccer
修改2021-09-14 17:27:50
1.2K0
修改2021-09-14 17:27:50
举报
文章被收录于专栏:测试学习之路测试学习之路

一.定位单节点

同级节点定位:

页面代码如下

我们需要通过后面的节点去定位前面的节点时,有两种方式:

1.//td[contains(text(),'2104191603')]/../td[1]

2.//td[contains(text(),'2104191603')]/preceding-sibling::td[1]

都是通过当前节点定位同一级上一个节点。可以通过修改对应级别去定位想要的节点。

如果需要通过前面的节点去定位后面的节点:

//td[contains(text(),'2104191603')]/following-sibling::td[1]

父子级节点定位:

页面代码如下

当我们需要通过某个子节点定位父级节点时,如果只需要找到父节点,那么可以使用

//div[contains(text(),'施工证')]/..

如果需要定位到父节点的“div” tag,可以使用

//div[contains(text(),'施工证')]/parent::div

也可以使用通配符*来完成父节点定位

//div[contains(text(),'施工证')]/parent::*

当我们需要通过父节点定位子节点时,可以直接在后面接上/child::span

二.定位多节点

如上图,页面存在很多动态的图片上传数量限制,我们需要根据数量限制去上传对应的图片。首先就需要定位页面图片数量的父级节点,再通过这个父级节点定位到第一个span标签就可以拿到数量限制了。

所以对应的定位方法如下,会定位到所有数量限制

//*[contains(@class, 'drawingsUploadLayout-container-imgLimit')]/span[1]

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.定位单节点
  • 二.定位多节点
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com