Software Testing Material

A site for software testers. We provide free online tutorials on Manual Testing, Automation Testing - Selenium, QTP, LoadRunner, Testing Tools and many more.

  • Blog
  • Tutorials
    • Manual Testing
    • Java
    • Selenium
      • TestNG
      • Maven
      • Jenkins
    • Framework
    • Katalon
    • Agile
    • SQL
    • VBScript
    • API Testing
  • Tools
    • TestLodge
    • FrogLogic GUI Tool
    • CrossBrowserTesting
    • BrowserStack
    • TestCaseLab
    • Kobiton
    • Sikuli
    • Postman
  • Interview Q & A
    • Selenium
    • TestNG
    • Test Framework
    • Explain Framework
    • Manual Testing
    • Software QA
    • Agile
    • Testing As A Career
    • General Interview Questions
    • API Testing
    • SOAP
  • Free Resources
  • Guest Post
    • Guest Post Guidelines
  • Training

How To Capture Full Page Screenshot Using Selenium WebDriver

Last Updated on September 10, 2018 by Rajkumar

How to capture full page screenshot using Selenium WebDriver:

This post “how to capture full page screenshot using Selenium WebDriver” deals with the issue we are facing with the browsers which cant capture the full page screenshot due to viewport problem. Different WebDrivers take screenshots in different ways. Some WebDrivers provide a screenshot of the entire page while others handle the viewport only.

Earlier I have posted a detailed post on how to capture a screenshot of failed test cases using Selenium WebDriver. If you have missed it, you could check the detailed post on how to capture screenshot of failed test cases using Selenium WebDriver.

After Selenium 3 releases, most of us facing issues with Firefox Browser. To over come compatibility issues, we are using Gecko Driver.

Must See: Running Selenium Scripts using Gecko Driver.

Coming to this post on “how to capture full page screenshot in Selenium WebDriver”. Earlier (Selenium 2) we could get the full page screenshot in Selenium only when we use Firefox driver. For other browsers, selenium captures only the visible area of the web page. Coming to Selenium 3, we are unable to capture full page screenshot by using Firefox browser too.

Yes, in Selenium 3 capturing full page screenshot by using Firefox browser is not working like earlier.

How to overcome this issue to capture full page screenshot in Selenium WebDriver.

There is a workaround to overcome this issue. We need to get the help of a third party utility called ‘aShot’.

What is aShot?
aShot is a WebDriver Screenshot utility. It takes a screenshot of the WebElement on different platforms (i.e. desktop browsers, iOS Simulator Mobile Safari, Android Emulator Browser).

aShot might be configured to handle browsers with the viewport problem. This gives a screenshot of the entire page even for Chrome, Mobile Safari, etc

Check more on aShot here.

Here is the download link of aShot Jar file.

Add this jar file in to your project.

Note: Select Project and Right click on the Project – Go to ‘Build path’ – Go to ‘Configure build path’ – Click on ‘lib’ section – Add external jar

Below mentioned script shows how to capture full page screenshot using Selenium WebDriver:

Capture full page screenshot
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package softwareTestingMaterial;
import java.io.File;
import javax.imageio.ImageIO;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import ru.yandex.qatools.ashot.AShot;
import ru.yandex.qatools.ashot.Screenshot;
import ru.yandex.qatools.ashot.shooting.ShootingStrategies;
 
public class FullPageScreenshot {
public static void main(String args[]) throws Exception{
    //Modify the path of the GeckoDriver in the below step based on your local system path
            System.setProperty("webdriver.gecko.driver","D://Selenium Environment//Drivers//geckodriver.exe");
            // Instantiation of driver object. To launch Firefox browser
    WebDriver driver = new FirefoxDriver();
            // To oepn URL "http://softwaretestingmaterial.com"
    driver.get("https://www.softwaretestingmaterial.com");
    Thread.sleep(2000);
    Screenshot fpScreenshot = new AShot().shootingStrategy(ShootingStrategies.viewportPasting(1000)).takeScreenshot(driver);
    ImageIO.write(fpScreenshot.getImage(),"PNG",new File("D:///FullPageScreenshot.png"));
        }
}

If you are not regular reader of my blog then I highly recommend you to sign up for the free email newsletter using the below link.

Subscribe and get a free eBook and regular updates from SoftwareTestingMaterial.com

SUBSCRIBE TO GET FREE EBOOK AND REGULAR UPDATES ON SOFTWARE TESTING

Filed Under: Selenium

data-matched-content-rows-num="2" data-matched-content-columns-num="3"
Previous Article:
How To Capture Screenshot of Failed Test Cases Using Selenium WebDriver
Next Article:
How To Handle Drop Down And Multi Select List Using Selenium WebDriver

About the Author

Rajkumar SM is a founder of SoftwareTestingMaterial. He is a certified Software Test Engineer by profession and blogger & youtuber by choice. He has an extensive experience in the field of Software Testing. He writes here about Software Testing which includes both Manual and Automation Testing. He loves to be with his wife and cute little kid 'Freedom'.

Comments

  1. Pushpa says

    November 20, 2017 at 7:27 am

    Initially the ashot.jar captured entire screen both horizontally and vertically. Now, it captures vertical fully, but the horizontal width is captured only half . So i am not able to see the right half of the image captured using ashot.jar. Please help.

ADVERTISEMENT

Froglogic-Squish-GUI-Tester
CrossBrowserTesting

TUTORIALS

  • Manual Testing Tutorial
  • Selenium Tutorial
  • TestNG Tutorial
  • VBScript Tutorial
  • Agile Methodology
  • SQL Tutorial for Testers
  • INTERVIEW QUESTIONS

  • Framework Interview Questions
  • Real Time Manual Testing
  • 100 Top Selenium Interview Questions
  • 30 Top TestNG Interview Questions
  • Agile Interview Questions
  • 80 SQL Interview Questions
  • TESTING TOOLS

  • Test Lodge
  • FrogLogic Squish
  • Cross Browser Testing
  • BrowserStack
  • Test Case Lab
  • Sikuli
  • © 2019 www.softwaretestingmaterial.com | About us | Privacy Policy | Contact us | Guest Post | Disclaimer | Terms of use | Sitemap