- 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.get("https://www.facebook.com/"); driver.findElement(By.id("email")).sendKeys("Username123"); File src = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE); FileUtils.copyFile(src, new File("D:\\Performance testing\\facebbok.png")); } }