Capturing screenshots of elements in the Selenium WebDriver

The TakesScreenshot interface captures the screenshot of the entire page, current window, visible portion of the page, or of the complete desktop window in their respective order as supported by the browser. It does not provide a way to capture an image of the specific element.

We can extend the screen capture functionality to capture images of WebElement using the Java Image API in addition to the TakesScreenshot interface.

In this recipe, we will implement a helper method to capture images of elements.

How to do it...

Let's implement the captureElementPicture() method to capture an image of WebElement. We will pass a WebElement instance to this method; the following code shows an example: ...

Get Selenium Testing Tools Cookbook - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.