Selenium selenium 如何定位没有某个属性的元素

醋精测试媛 · 2020年10月13日 · 最后由 醋精测试媛 回复于 2020年10月14日 · 2060 次阅读

八十几个元素,其他属性都是一样的,只有一个没有 style 属性,用过了 [class='el-tree el-tree--highlight-current'] div[style=""]:nth-last-child(1) .el-tree-node_label 和 [class='el-tree el-tree--highlight-current'] div:not([style]):nth-last-child(1) .el-tree-node_label 没有用。

共收到 9 条回复 时间 点赞

通过关联的唯一元素来定位

根据 role='treeitem'的 div 父子查询到下属的 span 标签?

直接用 xpath 的 not 不就行了么?多个属性的与或非

匿名 #4 · 2020年10月13日

一楼说得对,和唯一元素关联起来就可以定位到了

无法关联到唯一元素

404铁头娃 回复

role='treeitem'的 div 有很多个,他们唯一的区别是一个有 style,一个没有,有的时候没有 style 的那个会变成有 style 但是 style 为空

"//span[not(@style)]"
这个 xpath 或许适合你,如果你要增加其他属性,在not()后面加上 and 就能继续写其他 xpath 了。

用 text 来相对定位 比如 .//span[text()='福州白金翰宫']/..

谢谢,已解决

醋精测试媛 关闭了讨论 10月14日 13:52
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册