页面元素的定位方法


1、使用id进行定位

 

WebDriver  driver ;

WebElement  username = driver.findElement(By.id(“username”));

2、使用name进行定位

 

WebDriver  driver

WebElement  username = driver.findElement(By.name(“username”));

 

3、使用链接的全部文字定位(linkText)

sogou搜索

 

WebDriver  driver

WebElement  link = driver.findElement(By.LinkText(sogou搜索));

4、使用部分链接文字定位

sogou搜索

 

WebDriver  driver

//表示查找包含“sog”的链接,如果找到了多个,会将第一个拿到

WebElement  link =  driver.findElement(By.partialLinkText(“sog”));

//查找到含有sog的所有链接,并存储到List

List  links =  driver.findElements(By.partialLinkText(“sog”));

5、使用标签名称进行定位(4类似)

 

WebDriver  driver

WebElement tag = driver.findElement(By.tagName(“input”));

List  tags = driver.findElements(By.tagName(input));

Xpath定位

 

html代码:

Test Xpath

 

 

 搜狗搜索

 

 div1-img1

 

 

 

 

 

 

 百度搜索

 div2-img2

 

 查询" οnclick="alert1()">

 

 

 

 

 

6绝对路径定位:绝对路径  以 "/"  开头, 让xpath 从文档的根节点开始解析

WebDriver  driver

WebElement  button = driver.findElement(By.Xpath(“/html/body/div/input[@value=’查询’]”));

 

相对路径定位:"//" 开头, 让xpath 从文档的任何元素节点开始解析

WebDriver  driver

WebElement  button = driver.findElement(By.Xpath(“//input[@value=’查询’]”));

 

7、使用索引号定位:

WebElement button = driver.findElement(By.xpath("//input[2]"));

 

8、使用页面属性定位:

WebElement img = driver.findElement(By.xpath(“//img[@div1-img1]”));(定位某个图片)

 

driver.findElement(By.xpath("//a[@href='http://www.sogou.com']")).click(); //定位链接

9、使用模糊的属性值定位元素

Start-with()

表达式://img[starts-with(@alt,’div1’)]

表示查找图片alt属性开始位置包含“div1”关键字的页面元素

Contains()

表达式://img[contains(@alt,’g1’)]

表示查找图片alt属性包含“g1”关键字的页面元素

 

driver.findElement(By.xpath("//img[contains(@alt,'img2')]")).click();

 

10、使用页面元素的文本来定位元素

 driver.findElement(By.xpath("//a[text()='百度搜索']")).click();

表示要查找包含页面上的文本“百度搜索”的链接页面元素,是精确匹配

 

driver.findElement(By.xpath("//a[contains(text(),'搜索')]")).click()

表示要查找包含“搜索”两个字的链接页面元素,实现了根据部分文本进行匹配


你可能感兴趣的:(页面元素的定位方法)