Collections:
Dump Elements with By.xpath() in Java
How to dump all HTML elements of a Web page with WebDriver in Java?
✍: FYIcenter.com
If you want to dump all HTML elements of a Web page with WebDriver,
you can search child element recursively using the By.xpath() method.
Here is an example program that dumps all HTML elements of the loaded Web page.
// DumpElements.java
// Copyright (c) FYIcenter.com
import org.openqa.selenium.*;
public class DumpElements {
public static void main(String[] args) {
WebDriver driver = WebDriverLoader.load(args[0]);
driver.get("http://sqa.fyicenter.com");
WebElement html = driver.findElement(By.tagName("html"));
printTag(html,"");
driver.quit();
}
public static void printTag(WebElement tag, String space) {
java.util.List<WebElement> list = tag.findElements(By.xpath("./*"));
if (list==null) {
System.out.println(space+"<"+tag.getTagName()+"/>");
} else {
System.out.println(space+"<"+tag.getTagName()+">");
for (WebElement child: list) {
printTag(child,space+" ");
}
System.out.println(space+"</"+tag.getTagName()+">");
}
}
}
Compile and run the program, you will see that all elements of the Web page are dumped in the output:
C:\fyicenter> javac -classpath \
.;\fyicenter\selenium\java\client-combined-3.141.59.jar \
DumpElements.java
C:\fyicenter> java -classpath \
.;\fyicenter\selenium\java\client-combined-3.141.59.jar;\
\fyicenter\selenium\java\libs\guava-25.0-jre.jar;\
\fyicenter\selenium\java\libs\okhttp-3.11.0.jar;\
\fyicenter\selenium\java\libs\okio-1.14.0.jar;\
\fyicenter\selenium\java\libs\commons-exec-1.3.jar \
DumpElements Chrome
<html>
<head>
<meta>
</meta>
<meta>
</meta>
...
<link>
</link>
<title>
</title>
<script>
</script>
<script>
</script>
...
<link>
</link>
<script>
</script>
<link>
</link>
</head>
<body>
<div>
<div>
<p>
</p>
<p>
<a>
</a>
</p>
<p>
<a>
</a>
</p>
<p>
...
</div>
</div>
</body>
</html>
The output looks good. But element attributes are not included in the output. See the next tutorial on how the dump HTML attributes.
⇒ Dump Element Attributes with JavascriptExecutor in Java
⇐ JavascriptExecutor to Run JavaScript in Java
2020-01-04, 2312🔥, 0💬
Popular Posts:
How to generate passwords? To help you to obtain some good passwords for testing purpose, FYIcenter....
How to generate IP Addresses? To help you to obtain some IP addresses for testing purpose, FYIcenter...
How to convert hexadecimal encoded data back to binary data (or Hex to Binary Decoding)? Hex to Bina...
Why I am getting gzip compressed HTTP response in SoapUI? If you run a HTTP request for some Website...
How to valid IPv6 addresses? In order to help your programming or testing tasks, FYIcenter.com has d...