我是靠谱客的博主 奋斗蜡烛,最近开发中收集的这篇文章主要介绍selenium-java之元素定位,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Webdriver的两个Api:

findElement(By by):以给定的方式查找第一个元素

findElements(By by):以给定的方式查找符合条件的元素列表

By类种八大定位策略:id,name,tagname,classname,linkText,partialinkText,cssSelector,xpath(静态方法,类型都为String)

 

1,id:By.id(String id)

html中的id是唯一标识一个元素,一个元素的id在一个网页中是唯一的

定位代码:

WebElement input = driver.findElement(By.id("kw"));

2,name:By.name(String name)

用于提交到服务器后 的表单数据进行标识,只有设置了name属性的表单元素才能用于提交表单时传递数据

定位代码:

WebElement input1 = driver.findElement(By.name("wd"));

3,By.tagname:数据标签名 

WebElement input1 = driver.findElement(By.tagname("input")); 

4,By.className(String className) 样式名

classname 是指标签的class属性中的值

 WebElement input1 = driver.findElement(By.className("s_ipt")); 

5,by.linktext 超链接

WebElement input1 = driver.findElement(By.linktext("新闻")); 

6,By.partialinkText部分超链接文本

WebElement inputnew = driver.findElement(By.partialLinkText("新"));

7,By.cssSelector样式选择器

7.1.1 通过id方式

格式:By.cssSelector("标签名#id");

By.cssSelector("input#kw");

7.1.2通过classname样式名

格式:By.cssSelector(".classname");

By.cssSelector(".s_ipt");

7.1.3通过元素属性定位

语法:By.cssSelector("标签名"[属性名1='属性值'][属性名2='属性值']")

By.cssSelector("input[value='255']");

8,By.xpath (String xpath)

xpath是基于xml文档树状结构,是xml路径语言

8.1.1 根据绝对路径

可以通过浏览器右击标签->copy-copy xpath

8.1.2与属性结合

By.xpath("//*[@id="kw"]")

* 任意元素节点

[]判断的表达式

@选取属性

id="xx"选取的 属性和值的表达式

8.1.3相对路径

By.xpath("//form[1]/span[1]/input")

8.1.4逻辑(and、or)

By.xpath("//input[@class='s_ipt' and @length='255']")

 

 

最后

以上就是奋斗蜡烛为你收集整理的selenium-java之元素定位的全部内容,希望文章能够帮你解决selenium-java之元素定位所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部