0
java.lang.ClassCastException: org.openqa.selenium.remote.RemoteWebDriver cannot be cast to TakesScreenshot

Solved 1 Answers 52 Views
I am getting below error while taking a screenshot.

java.lang.ClassCastException: org.openqa.selenium.remote.RemoteWebDriver cannot be cast to org.openqa.selenium.TakesScreenshot

    at com.qamate.pages.HomePage.takeScreenShot(HomePage.java:73)
    at com.qamate.pages.HomePage.SelectADepartment(HomePage.java:67)
    at com.qamate.step_definations.CheckoutStepDefinitions.addProductsToShoppingBag(CheckoutStepDefinitions.java:60)
    at ✽.Given User added products to shopping bag(com/qamate/checkout.feature:8)

 

What is the possible solution?

1 Answer

1
Best answer

There are two things suggest you.

1. Update your selenium dependency to 3.4.0 or the latest one.

And

2. Instead of casting your RemoteWebDriver instance directly, you should use Augmenter as given below.

WebDriver augmentedDriver= new Augmenter().augment(driver);
File screenShot = ((TakesScreenshot) augmentedDriver).getScreenshotAs(OutputType.FILE);

 

answered May 13 by monisha (51 points)
selected May 14 by stbadmin
...