Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error while taking screenshots with Remote Chrome driver #72

Closed
nikhilkr123 opened this issue Jun 15, 2020 · 4 comments
Closed

Error while taking screenshots with Remote Chrome driver #72

nikhilkr123 opened this issue Jun 15, 2020 · 4 comments

Comments

@nikhilkr123
Copy link

InvocationTargetException while taking screenshot of Remote Chrome driver running in Docker.

I am using following code
Shutterbug.shootPage(getWrapper().getWebDriver(), ScrollStrategy.WHOLE_PAGE).getImage();

java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.assertthat.selenium_shutterbug.utils.web.Browser.sendCommand(Browser.java:276) ~[selenium-shutterbug-0.9.3.jar:?]
at com.assertthat.selenium_shutterbug.utils.web.Browser.evaluate(Browser.java:281) ~[selenium-shutterbug-0.9.3.jar:?]
at com.assertthat.selenium_shutterbug.utils.web.Browser.takeScreenshotEntirePageUsingChromeCommand(Browser.java:187) ~[selenium-shutterbug-0.9.3.jar:?]
at com.assertthat.selenium_shutterbug.utils.web.Browser.takeScreenshotEntirePage(Browser.java:119) ~[selenium-shutterbug-0.9.3.jar:?]
at com.assertthat.selenium_shutterbug.core.Shutterbug.shootPage(Shutterbug.java:110) ~[selenium-shutterbug-0.9.3.jar:?]
at com.assertthat.selenium_shutterbug.core.Shutterbug.shootPage(Shutterbug.java:72) ~[selenium-shutterbug-0.9.3.jar:?]
at com.assertthat.selenium_shutterbug.core.Shutterbug.shootPage(Shutterbug.java:58) ~[selenium-shutterbug-0.9.3.jar:?]
at com.intellij.rt.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:66) [testng-rt.jar:?]
at com.intellij.rt.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:110) [testng-rt.jar:?]
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_181]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
at com.assertthat.selenium_shutterbug.utils.web.Browser.sendCommand(Browser.java:273) ~[selenium-shutterbug-0.9.3.jar:?]
... 31 more
Caused by: org.openqa.selenium.WebDriverException: POST /session/d6ba6bb155e97d5d4b403131323adf3cf54e5904/chromium/send_command_and_get_result
Build info: version: '2.53.0', revision: '35ae25b', time: '2016-03-15 17:00:58'
System info: host: '173-234-104-220', ip: '173.234.104.220', os.name: 'windows', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_181'
Driver info: driver.version: unknown
Command duration or timeout: 0 milliseconds
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_181]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_181]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_181]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_181]
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:214) ~[selenium-remote-driver-3.141.59.jar:?]
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:166) ~[selenium-remote-driver-3.141.59.jar:?]
at org.openqa.selenium.remote.http.JsonHttpResponseCodec.reconstructValue(JsonHttpResponseCodec.java:40) ~[selenium-remote-driver-3.141.59.jar:?]
at org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:80) ~[selenium-remote-driver-3.141.59.jar:?]
at org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:44) ~[selenium-remote-driver-3.141.59.jar:?]
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) ~[selenium-remote-driver-3.141.59.jar:?]
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552) ~[selenium-remote-driver-3.141.59.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_181]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
at com.assertthat.selenium_shutterbug.utils.web.Browser.sendCommand(Browser.java:273) ~[selenium-shutterbug-0.9.3.jar:?]
... 31 more
Caused by: org.openqa.selenium.UnsupportedCommandException: POST /session/d6ba6bb155e97d5d4b403131323adf3cf54e5904/chromium/send_command_and_get_result
Build info: version: '2.53.0', revision: '35ae25b', time: '2016-03-15 17:00:58'
System info: host: '173-234-104-220', ip: '173.234.104.220', os.name: 'windows', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_181'
Driver info: driver.version: unknown
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'nraman', ip: 'fdd0:6f82:2ce3:f900:f9a6:8717:606d:d45f%en0', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.14.6', java.version: '1.8.0_181'
Driver info: driver.version: unknown

@glibas
Copy link
Member

glibas commented Jun 19, 2020

Hi @nikhilkr123 ,

Could you please let us know chrome and chromedriver versions you are using?

Can you reproduce this issue consistently or its intermittent?

@nikhilkr123
Copy link
Author

@glib-briia Its always reproducible on my Mac (os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.14.6', java.version: '1.8.0_181') with following code

docker run -p 4444:4444 selenium/standalone-chrome:3.141.59

Test Code

WebDriver driver = new RemoteWebDriver(new URL("http://0.0.0.0:4444/wd/hub"),
          new ChromeOptions());
driver.get("https://github.com");
Thread.sleep(5000);
Shutterbug.shootPage(driver, ScrollStrategy.WHOLE_PAGE).getImage();

@glibas
Copy link
Member

glibas commented Jul 26, 2020

Hi @nikhilkr123

Try using WHOLE_PAGE_SCROLL_AND_STITCH strategy e.g.

Shutterbug.shootPage(getWrapper().getWebDriver(), ScrollStrategy.WHOLE_PAGE_SCROLL_AND_STITCH).getImage();

Available in v 0.9.5

@glibas
Copy link
Member

glibas commented Aug 11, 2020

Closing due to inactivity

@glibas glibas closed this as completed Aug 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants