selenium定位元素方法

一、selenium定位元素基本的方法
1、By.id
在这里插入图片描述
2、By.name
在这里插入图片描述
3、By.linktext
在这里插入图片描述
4、By.xpach
在这里插入图片描述
xpath的定位是火狐的特殊定位,需要加载组件firebug和fire path(如果是版本的已经不支持firebug和firepath可以使用TRYpath 然后定位元素后右键复制-选择定位类型即可
在这里插入图片描述
5、By.class name
6、tag name
7、partial link text
8、css selector
二、xpath定位延伸
1、WebElement password = driver.findElement(By.xpath("//*[@id=‘J_login_form’]/dl/dt/input[@id=‘J_password’]"));
其中//代表根目录,[]里面的@id=‘’是查询id为‘’的元素
2、xpath的模糊定位方法:
v
a. 用contains关键字,定位代码如下:
driver.findElement(By.xpath(“//a[contains(@href, ‘logout’)]”));
这句话的意思是寻找页面中href属性值包含有logout这个单词的所有a元素,由于这个退出按钮的href属性里肯定会包含logout,所以这种方式是可行的,也会经常用到。其中@后面可以跟该元素任意的属性名。
b. 用start-with,定位代码如下:
driver.findElement(By.xpath(“//a[starts-with(@rel, ‘nofo’)]));
这种方式一般用于知道超链接上显示的部分或全部文本信息时,可以使用。
这句的意思是寻找rel属性以nofo开头的a元素。其中@后面的rel可以替换成元素的任意其他属性
c. 用Text关键字,定位代码如下:
driver.findElement(By.xpath(“//a[contains(text(), ’退出’)]));
直接查找页面当中所有的退出二字,根本就不用知道它是个a元素了。这种方法也经常用于纯文字的查找
d.如果知道超链接元素的文本内容,也可以用
driver.findElement(By.xpath(“//a[contains(text(), ’退出’)]));
3.XPath 关于网页中的动态属性的定位,例如,ASP.NET 应用程序中动态生成 id 属性值,可以有以下四种方法:
a.starts-with 例子: input[starts-with(@id,‘ctrl’)] 解析:匹配以 ctrl开始的属性值
b.ends-with 例子:input[ends-with(@id,’_userName’)] 解析:匹配以 userName 结尾的属性值
c.contains() 例子:Input[contains(@id,‘userName’)] 解析:匹配含有 userName 属性值
参考网址:https://www.cnblogs.com/chenshaoping/p/5540434.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值