定位元素高级应用

Posted 雅虎跳跳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了定位元素高级应用相关的知识,希望对你有一定的参考价值。

1. 通过同一父节点下其他元素的唯一性定位法

  对于诊断结论列表,要对某一条诊断结论进行修改,每条诊断结论的修改按钮的元素的属性相同,而ID又是随机生成的。这时要定位到名为“未发现异常”的修改按钮,诊断名称和修改属于同一层级。需要先定位到名称“未发现异常”,然后再定位“未发现异常”的父节点下 title=’修改’的元素。

driver.find_elenment_by_xpath(“//td/div[text()=’未发现异常’]/ancestor::*/td[6]/div/img[@tile=’修改’]”).click()

driver.find_elenment_by_xpath(“//td/div[text()=’未发现异常’]/ancestor::tr/td[6]/div/img[@tile=’修改’]”).click()

ancestor表示所有的父节点、祖父节点。上面第一种表示所有的父节点下能匹配到的。第二种表示父节点为tr的下面。

其他常见的还有:preceding-sibling 选取当前节点之前的所有同级节点,following-sibling 选取当前节点之后的所有同级节点

更多参见:http://www.cnblogs.com/zhaozhan/archive/2009/09/10/1563735.html

 

2. 页面上相同元素只会出现一个的情况,可以用Class属性定位

  诊断结论的输入框有名称、编码、描述,这些输入框的合法性校验一直,输入非法的字符时,弹出额提示框一样,如果用路径定位,需要对每一个输入框写一个路径。他们有一点相同的就是,Class一样。而且同时只有一个出现。这时就可以用Class属性定位。(作为校验合法性用)

以上是关于定位元素高级应用的主要内容,如果未能解决你的问题,请参考以下文章

xpath的高级使用:用xpath定位当前元素的相邻元素/兄弟元素

前端—— 高级布局:文档流浮动布局流式布局定位布局flex布局响应布局

关于盒模型的 盒子模型 浮动 定位以及高级选择器的使用

技术分享 | app自动化测试(Android)–高级定位技巧

精通css 高级web标准解决方案——可视化格式模型-定位模型

高级选择器