- Given any web page, we would like to take its screenshot using Selenium Web Driver.
- We can use this screenshot for reporting purpose or for raising a bug in case of a test case failure.
- We can capture the screenshot of any web page using three simple steps:
- Step 1 : Cast WebDriver object to TakeScreenshot object using
((TakesScreenshot) driver).
- Step 2: Use
getScreenshotAs(OutputType.FILE)
method to create an image file.
- Step 3: Now copy the image file to desired location on your Machine using :
FileUtils.copyFile(src,
new
File(
"D:\\Performance testing\\facebookPic.png"
));
- Screenshot (Image) file will be saved on your machine at specified location. e.g : (
D:\\Performance testing\\facebookPic.png
)
- Screenshot (Image) file will be saved on your machine at specified location. e.g : (
- Now, Go to a specific location on your machine (
D:\\Performance testing\\facebookPic.png
), we will be able to find the screenshot image file there.
- Step 1 : Cast WebDriver object to TakeScreenshot object using
package org.learn; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import org.openqa.selenium.By; import org.openqa.selenium.OutputType; import org.openqa.selenium.TakesScreenshot; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class takeScreenshot { public static void main(String[] args) throws IOException { // TODO Auto-generated method stub System.setProperty( "webdriver.chrome.driver" , "C:\\\\work\\\\chromedriver.exe" ); WebDriver driver = new ChromeDriver(); driver.findElement(By.id( "email" )).sendKeys( "Username123" ); File src = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE); FileUtils.copyFile(src, new File( "D:\\Performance testing\\facebbok.png" )); } } |