首页 > 代码库 > 【Selenium WebDriver】元素定位函数 FindElement
【Selenium WebDriver】元素定位函数 FindElement
定位Web页面上的元素,用FindElement函数,它可以根据元素的不同属性来快速定位。具体的属性如下:
例子:
HTML页面文件:
1 <html xmlns="http://www.w3.org/1999/xhtml" lang="en-us"> 2 <head> 3 <body> 4 <form name="loginForm"> 5 <label for="username">UserName: </label> <input type="text" name="username" id="uid"/> </br> 6 <label for="password">Password: </label> <input type="password" name="password" id="pid" /> </br> 7 <input name="login" type="submit" value="Login"/> 8 </form> 9 </body>10 </head>
1 package com.annieyu.test; 2 import org.openqa.selenium.By; 3 import org.openqa.selenium.WebDriver; 4 import org.openqa.selenium.WebElement; 5 import org.openqa.selenium.firefox.FirefoxDriver; 6 7 public class FindElement { 8 public static void main(String[] args) { 9 WebDriver driver = new FirefoxDriver();10 // HTML页面文件路径11 String urlPath=("file:///D:/AnnieJava/HTML/ExamplePage.html");12 13 // 打开指定的URL14 driver.navigate().to(urlPath);15 16 // findElementByID查找页面上的元素17 WebElement userID = driver.findElement(By.id("uid"));18 // findElementByName查找页面上的元素19 WebElement userName = driver.findElement(By.name("username"));20 21 System.out.println(userName.getTagName());22 }23 }
ID 属性是最常用的,如果页面上元素有一个唯一的ID标识符,用 ID属性能快速定位元素。
但是有时元素不一定有ID属性,或ID不唯一,或ID属性是动态生成的时,可考虑用Name属性。
除了用ID,Name属性,我们还可以用Class属性来定位元素,Class属性是为了使用CSS时才有的。
1 <html xmlns="http://www.w3.org/1999/xhtml" lang="en-us"> 2 <head> 3 <body> 4 <form name="loginForm"> 5 <label for="username">UserName: </label> <input class="username"> </br> 6 <label for="password">Password: </label> <input class="password" /> </br> 7 <input name="login" type="submit" value="Login"/> 8 </form> 9 </body>10 </head>
1 package com.annieyu.test; 2 import org.openqa.selenium.By; 3 import org.openqa.selenium.WebDriver; 4 import org.openqa.selenium.WebElement; 5 import org.openqa.selenium.firefox.FirefoxDriver; 6 7 public class FindElement { 8 public static void main(String[] args) { 9 WebDriver driver = new FirefoxDriver();10 // HTML页面文件路径11 String urlPath=("file:///D:/AnnieJava/HTML/ExamplePage.html");12 13 // 打开指定的URL14 driver.navigate().to(urlPath);15 16 // findElement ByClassName查找页面上的元素17 WebElement className = driver.findElement(By.className("username"));18 }19 }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。