Thursday, 21 July 2016

Selenium2: WebDriver: Locate element by By XPath

WebDriver interface provides number of methods to locate elements in a web page. You can locate an element by using class name, id, name, linktext etc., In this post, I am going to explain how to locate an element using Xpath.


index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
 pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>

<body>
 <div class="center">
  <h1>Simple application to demonstrate Selenium webdriver</h1>
 </div>

 <div class="center">
  <p id="para1">WebDriver interface provides number of methods to
   locate elements in a web page. You can locate an element by using
   class name, id, name, linktext etc.,</p>
 </div>
</body>
</html>


Following application get the text associated with paragraph, using xpath.
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;

public class App {
 public static void main(String[] args) {
  WebDriver driver = new FirefoxDriver();
  driver.get("http://localhost:8080/application");

  WebElement paragraph = driver.findElement(By
    .xpath("/html/body/div[2]/p"));
  System.out.println(paragraph.getText());

  driver.close();
 }
}


Output
WebDriver interface provides number of methods to locate elements in a web page. You can locate an element by using class name, id, name, linktext etc.,


Next post, I am going to explain how to get the XPath of a html element.



Previous                                                 Next                                                 Home

No comments:

Post a Comment