New issue
Advanced search Search tips
Starred by 250 users

Comments by non-members will not trigger notification emails to users who starred this issue.
Status: Available
Owner: ----

Blocked on:
issue chromium:45209



Sign in to add a comment
ChromeDriver2 take screenshot is not full page
Reported by jiexa....@gmail.com, Mar 31 2013 Back to list
In version 2 ChromeDriver started making a screenshot is not the whole page, but only part of it.
Here is some code (the result in Attach)

-------------------
from pyvirtualdisplay import Display
from selenium import webdriver
from threading import Timer

display = Display(visible=0, size=(1200, 800))
display.start()

chromeOps = webdriver.ChromeOptions()
chromeOps._binary_location = "/usr/bin/google-chrome"


driver = webdriver.Chrome('../chromedriver2', port=4445, chrome_options=chromeOps) # Optional argument, if not specified will search path. 
driver.get('http://trinixy.ru')
driver.save_screenshot('screenie.png')
driver.quit()
display.stop()
-------------------



ChromeDriver = 2 (r191457)
Chrome = Google Chrome 26.0.1410.43 
OS = Debian and Ubuntu
 
screenie.png
366 KB View Download
Project Member Comment 1 by kkania@chromium.org, Apr 1 2013
Status: Accepted
This is expected. We've had some requests for full page screenshots, but we haven't implemented it yet. We could try resizing the window to some huge amount, or scrolling and stitching.

The previous way we did things in ChromeDriver1 allowed us to get a full page screenshot, but it was not always 100% accurate to what a user saw. The way we are doing in ChromeDriver2 should be exactly what the user sees.
Thank you for quickly response!
Tell me, please, how can I resize window at 100% in ChromeDriver2 and make fullscreen screenshot?

Which way will be better for it?
Project Member Comment 3 by kkania@chromium.org, Apr 1 2013
You can resize the window with WebDriver. However, we haven't implemented that command yet. We will shortly.
Comment 4 by ja...@tyrrells.com, Apr 2 2013
Looking forward to window resize being implemented!
Comment 5 Deleted
I have not had any problems until a few days ago. I believe it was due to an eclipse update I did, is there anyway to revert back to chromedriver1 because this behavior has  made all my chromedriver tests worthless. I work for a company that creates very large web pages. To only be able to take a screenshot of the visible screen is worthless. I cannot believe you would change this without at least leaving the option to take the complete screenshot... Thank god that sales are the lowest on chrome. 
Hello, we are using the Perl WebDriver bindings. The screenshot used to actually grab a full page for us with older versions of Chrome, but now with Chrome 27 (Version 27.0.1453.110 m) and chromedriver.exe that is 2,575,872 bytes in size, only the "visible" portion of the page is captured and the rest is black. See the attached file.

With the new chromedriver.exe for Chrome v27 to v29, that is 6,579,712 bytes in size, the problem is far worse. The entire screenshot is just black.

We run our tests with a non interactive service account. Please re-instate the old behaviour where the a) entire page is captured and b) non interactive service accounts can be used.
10920.png
111 KB View Download
+1 for reinstating the old behavior. I was really hoping to use this feature but capturing only part of the page is of no value for what I'm doing. Resizing doesn't help, it's only capturing the portion of the browser visible to the user on the screen.
Hoping that this issue gets fixed soon. I'm unable to get any useful output for my chrome automation as of now. I would be more satisfied with full webpage screenshots that are not 100% accurate than none at all.
Comment 10 by dmmcc...@gmail.com, Jun 27 2013
Like others, we use full page screenshots extensively in automated tests, both to compare between browsers, and between versions for hundreds of differently branded pages.  Please reinstate support for the old behavior.

What is the status on being able to resize a Chrome window via the chromedriver? Is there a timeline outlining when the feature will be delivered?
Project Member Comment 12 by kkania@google.com, Jul 9 2013
Since ChromeDriver 2.0, you should be able to maximize the window before you take your screenshot.
Please get this one fixed soon.
Like others, this is used for automated tests.
The visible window only cuts off any issues with the page footer etc.
Please reinstate support for the old behavior.

You can maximize via manage().Window.maximize.

Cheers

Comment 14 by ccon...@lynda.com, Jul 25 2013
Here's another vote for getting this fixed. 
I'm using Watir and the following command:

browser.driver.save_screenshot(screenshot_file)

The visible part of the screen captures very well but the rest of the screen is saved as black, same as comment #7
Thanks in advance for a speedy fix!
We too rely on full screenshot being available and it's critical for our needs. Another vote to get this fixed. I can't think of a scenario where someone cares to see only the visible area because users can scroll through the page. Worst case please give a parameter that specifies if full or partial screenshot should be taken.
I know that the people suggesting to maximize the browser are trying to help, but this really isn't a solution, is it? Almost every page I access on a daily basis is larger than the scrollable area, even when the browser window is maximized. I really need to save a record of the final state of the webpage for what I'm currently doing.  
Comment 17 by salm...@gmail.com, Jul 30 2013
I'm also facing similar issue when i use Chrome to run my test. I see black image at the bottom of page. I deliberately need this to be fixed. Any idea when this bug will get fixed?
Chrome - black image at the bottom of the page.jpg
58.7 KB View Download
Comment 18 by shex...@gmail.com, Aug 4 2013
We too are facing the sames issues (and also the same black screen as Tim Buckland noted).
We, as our customers, rely on full page screenshots as a way to validate apps' UI, and plea that you enable the whole page screenshot (which conforms to the W3C sepc: http://www.w3.org/TR/webdriver/#current-window).
You can easily expose the new API in a different URI (hopefully still REST), without breaking so many lines of code (and images) already built on top of this one.
@kkania, is there a relevant ticket at chromium? what about https://code.google.com/p/chromium/issues/detail?id=261224 ?
Is there any documentation for the new API? any workarounds?

Comment 20 by dpu...@gmail.com, Aug 5 2013
In addition to everything mentioned above, please notice that there is a bug, not just a different behaviour. 

Using the latest ChromeDriver server for win32 (v2.1.210652) together with the latest Chrome (ver 28.0.1500.95 m) returns a completely black screen when taking a screenshot (done using Webdriver java binding). 

Taking a screenshot using a previous version of ChromeDriver (ver. 26.0.1383.0) returns a part of the image the size of the viewport BUT NOT the actual viewport. It always returns the top left part of the page, (so even if we scroll down, the result would not change).

Please fix asap, this has a significant effect on our automatic testing. 

As mentioned before the desired behavior for us is the one which was prevalent before - the screenshot should be of the entire page, not just the viewport. There were many code line written based on this assumption. At the very least, allow this behavior as an option.

Thanks!

Comment 21 by shex...@gmail.com, Aug 5 2013
I tried digging a bit in the source code, but it's hard when not knowing where to look.
A pick at webdriver_session.cc ( http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/webdriver/webdriver_session.cc) shows that it comprises the method "Session::GetScreenShot(std::string* png)" and in it "RunSessionTask(..Automation::CaptureEntirePageAsPNG..)".
If someone knows more and can point me to some direction, I'd super appreciate it. 
Project Member Comment 22 by kkania@google.com, Aug 6 2013
 Issue 434  has been merged into this issue.
Comment 23 by nirvd...@gmail.com, Aug 14 2013
Undoubtedly this would be easier if the following Chromium issue were resolved:

http://code.google.com/p/chromium/issues/detail?id=45209

As of today, however, that issue has been open for 3.25 years.  So, I don't have much faith that'll be resolved any time soon.

What approach was taken with Chrome Driver 1?  Chrome 29 is hitting the release channel soon and with that breaking Chrome Driver 1, that puts a lot of us in a tight spot.  I can port SnapsIE to Firebreath and go that route, but it's a pretty big hack and would only work on Windows.
This issue bugged me a lot since other Drivers in Selenium can take full Screenthots.
If it helps someone, I created a simple script in C# which scrolls around the page, takes screenshots and stitches it together. The link to the script is: http://dev.flauschig.ch/wordpress/?p=341
It would be helpful if this issue is prioritized and fixed in the next chromedriver release.
I agree, this issue is disturbing, we use the screenshots for images comparison and checking a test flow, but now we got only partial captures (only visible area) and the rest is black. I hope you fix it soon. Thanks!
Comment 27 by tcbl...@gmail.com, Aug 28 2013
Waiting to be solved also, we use it also to compare scrrenshots... so not valuable in case is not a full page... this issue is quite old... but it seems nobody put the enough effort to solve it... anybody is taking a look at this or should we change to other solution?
Project Member Comment 28 by kkania@chromium.org, Aug 28 2013
Status: Closed
I do not foresee us being able to do this until https://code.google.com/p/chromium/issues/detail?id=45209 is fixed. This will likely not happen soon, so I'm going to go ahead and mark this closed. We will reopen when we have plans to fix this.

With ChromeDriver 2.2, there are several other bugs with screenshots that should be fixed in the upcoming v2.3.
Comment 29 by shex...@gmail.com, Aug 28 2013
Could there be a mixed up? since the bug you mentioned is opened since 2010, and we're all pointing to the bug with the release of 2.2 a few weeks back.
Comment 30 by shex...@gmail.com, Aug 28 2013
In any case, is there a chance to have a discussion with the community, e.g., in two days time using the IRC chat or Google Hangout which I noticed you guys used (i.e. http://www.youtube.com/watch?v=LfubcEqtPKI)?
Comment 31 by dpu...@gmail.com, Aug 28 2013
@KKania, As Shex mentioned, I think there's a mistake. The issue you pointed out is not relevant at all. Up until a few weeks ago, ChromeDriver took FULL SCREENSHOTS of the screen correctly. A chrome update (I think to version 28) caused a bug in which only part of the screen is captured, (NOT the visible part, mind you, but the top part, even if the page was scrolled down). After the latest Chrome update (ver 29) and using the newest version of ChromeDriver, there is now NO screenshot capture at all - only completely black screens, the size of the what a full screen capture would have been.

Please re-open this issue.
Comment 32 by dpu...@gmail.com, Aug 28 2013
BTW, I Also agree with Shex about a discussion about this issue with the community. I think this is a good idea.
Project Member Comment 33 by kkania@chromium.org, Aug 28 2013
#29, there may be several issues in this bug, but the one I'm referring to is the originally posted issue that ChromeDriver2 doesn't support full page screenshots. This has been the case for all 2.x.

#30, sure. Many of the contributors to chromedriver are on the #selenium freenode irc during PST hours (look for kkania or chrisgao particularly). Or feel free to email the chromedriver-users googlegroup if you have potential ideas on how to solve this problem.
@kkania - the originally posted issue is related just to chromedriver2, 45209 chromium issue is open since 3 years and chromedriver was taking full screenshots till driver2.x releases. 
As you have mentioned in earlier posts that ChromeDriver1 allowed  to get a full page screenshot, but it was not always 100% accurate to what a user saw. The way you  are doing in ChromeDriver2 should be exactly what the user sees.
Can you use the same hook in chromedriver2 as in chromedriver1 till this issue gets fixed?
We can atleast continue with our tests as we are blocked now with 2.x and chrome browser upgrades due to this limitation. 

Project Member Comment 35 by kkania@chromium.org, Aug 28 2013
The new hook doesn't even exist in Chrome 29, but it was deleted because it was not supported with the new rendering pipeline.

If you want full page screenshots, for now you'll have to scroll and stitch the images together.
Comment 36 by edleb...@gmail.com, Sep 12 2013
This is how I feel about this issue with screenshots: http://www.nooooooooooooooo.com/
Comment 37 Deleted
Comment 38 by a...@wingify.com, Sep 14 2013
The issue is still not fixed in chromedriver v2.3 that is currently available for download. Can you please let us know when the fix would be coming?
@kkania - Just an FYI 
Same issue is happening using sel 2.34 and chrome driver 26.0.1383.0 on chrome version 23-25
PFA screenshot. How does it relate to chromedriver and browser update?
We just updated selenium version and started getting this issue.
screen-grab.jpg
704 KB View Download
Comment 40 by nirvd...@gmail.com, Sep 24 2013
If you're using an older version of Chrome, you can use ChromeDriver 1 and avoid the problem.  But since Chrome auto-updates for people, this option is of decreasing value.
Hello - I'm using chromedriver 1 for my testing. Earlier we didn't see this issue when run against 2.27, chromedriver 1 and chrome 25.
Updating to latest selenium 2.34  we started facing this issue. So i don't think pointing this screen capture issue to a chromium issue is correct. Something changed in the selenium releases that's causing this issue? 

PFA screenshot of a page having same size which i posted in #39 This one doesn't have a black capture.


screen-grab-2.27.jpg
2.3 MB View Download
#41 screenshot is taken using 2.27, chromedriver 1 and chrome 25.
Comment 43 by lenc...@gmail.com, Oct 13 2013
Please get the full page screenshot back...please don't make people switch to chromedriver v1.
Comment 44 by a...@wingify.com, Oct 13 2013
Same issue with Chromedriver 2.24 too. Please fix this issue ASAP.
Disappointing responses from the project guys on this page. What you now have is varying functionality between the same function in different browsers (run screen shots through firefox and then chrome to see the differences). This is the very definition of a bug (ie something that annoys the crap out of me)! 
The response about setting the page to maximum size is very poor and does not take in to account reactionary webpages being made for mobile devices as well as desktop. Setting full screen in these instances completely breaks the logic we are trying to test. 
Please fix this to allow the choice of full screen or not as scrolling down and stitching the pages together is a horrible hack that will be prone to false positive failures.   

Comment 46 by a...@wingify.com, Oct 16 2013
Atleast update the thread if you are actively working on this issue. This BUG has broken my entire system.
Comment 47 by hubb...@gmail.com, Oct 16 2013
I'm disappointed by the response as well.  A change was made that broke many tests which had been running successfully for months.  Yet we all need to develop a work around (which is only necessary for chrome)?  The scroll/stitch suggestion is an especially error prone endeavor for us due to animated images on our pages.  Our only option is to run our regression suite against every browser except chrome until we have time to come up with a real solution.
Please fix ASAP, this break many tests. I need to run my test in chrome only.

Is there any work around or solution to get the full screen in chrome. I am facing the same issue not able to capture the whole webpage.
Comment 50 by jaf...@owler.com, Oct 26 2013
Please provide a workaround or a patch for semi webpage screenshot received and blank screen on half of the page.

Comment 51 by nirvd...@gmail.com, Oct 26 2013
There is neither a workaround nor a patch.  I personally tried porting SnapsIE to NPAPI to work with Chrome and had very mixed results.  But even that isn't much of a solution since NPAPI is being removed from Chrome in two months.

The sad truth of the matter is everyone on this ticket is just out of luck.  And it sounds like it won't be resolved until that 3.5 year old Chromium issue is resolved.  But there seems to be no interest in resolving that either.  So, I wouldn't expect this issue to be resolved anytime soon.
Able to generate Full screenshot through Stitching Images using awt package methods. 
In some pages of the product I am working, it still causes few issues. Expecting a fix soon
Project Member Comment 53 by kkania@chromium.org, Nov 6 2013
 Issue 393  has been merged into this issue.
Comment 54 by a...@wingify.com, Nov 6 2013
Please reopen this bug and fix ASAP. At least let know when would this be fixed?
Comment 55 by mw5...@gmail.com, Nov 7 2013
I'm stuck on this bug for about 2 weeks. It's really a big headache for webtest projects.Maybe it's a bug from chrome, because there is not a good approach to capture the screenshot for chrome extensions. Those extensions just scroll the page and stitch the pieces together.
This bug, no matter it belongs to Chrome or WebDriver, really makes us into a rough way.
Comment 56 by n...@edited.com, Nov 7 2013
After reading this and a number of other bug reports it seems the solution is simply to drop Chrome and use Firefox/HtmlUnit as there seems to be too many issues which aren't a priority before this can be fixed.
Hey, why did you close the bug, which was not fixed??? Can you see everyone need this functionality working?
Please, do something!
Comment 58 by a...@wingify.com, Nov 9 2013
The developers are reluctant in solving this bug and even in providing any updates for the same. Very disappointed to see such a behaviour from  such an active community. :(


Project Member Comment 59 by kkania@chromium.org, Nov 14 2013
 Issue 622  has been merged into this issue.
Project Member Comment 60 by kkania@google.com, Nov 14 2013
 Issue 624  has been merged into this issue.
That's too bad
Comment 62 Deleted
Please fix this bug ASAP
Comment 64 Deleted
No news on this?
Yes, please fix it.  Much appreciated.
please pretty please need it for mobile tests
Comment 68 by j...@jahewson.com, Jan 14 2014
There is a workaround: scroll the page using JavaScript and stitch together the screen shots.

Use `document.documentElement.offsetWidth` (and offsetHeight) to get the overall size of the page, then keep taking screenshots until `document.documentElement.offsetHeight - window.scrollY > document.documentElement.clientHeight` is false, and execute `window.scrollBy(0,document.documentElement.clientHeight)` after every screen shot to scroll the page.
Comment 69 by nirvd...@gmail.com, Jan 14 2014
If you're going to scroll and stitch, I've noticed that chromedriver may return from executeScript before actually scrolling.  If I send a second call to query for the scroll position, however, it appears to "flush" the previous command.  Without that little trick, I was duplicating some portions of the viewport.
Scroll/stitch is not a real solution. All elements with fixed position would appear on each screenshot you take, you'll have JavaScript events firing that may result in changes to the page...

It's an ugly hack that's better than nothing, but not a solution.
Scroll/stitch didn't work properly for me in all the cases, most of the times its duplicating the patch.
I know this is closed & I know it looks like nobody will work on this but ...

Please somebody get this working - we use this for our acceptance test & its really annoying pass all our acceptance tests but still find issues below the fold.

Thanks for all the great work so far.
Project Member Comment 73 by samu...@chromium.org, Feb 3 2014
Blockedon: chromium:45209
Status: Verified
Reopening, since this problem still exists.

However we can't really fix it until some changes are made on the browser side (see https://code.google.com/p/chromium/issues/detail?id=45209).
Project Member Comment 74 by samu...@chromium.org, Feb 3 2014
 Issue 643  has been merged into this issue.
For the love of automated testing please fix this issue asap :)
Project Member Comment 76 by craigdh@chromium.org, Feb 14 2014
 Issue 704  has been merged into this issue.
By the moment, if you are using python bindings, you can review the next workaround (some variables are our project variable but can be easily replaced)

https://snipt.net/restrada/python-selenium-workaround-for-full-page-screenshot-using-chromedriver-2x/
I forgot mention it. The code use Python Image Library :)
Comment 79 by zabra...@gmail.com, Feb 24 2014
+1 to fix this issue ASAP and give it a high priority.
Please guys, we need your "vote" now.
plz fix asap. thanks
Same critical to me on auto testing!
Hope fix asap.
Any Updates regarding same problem ?? 

Screenshot capture was working perfect in old version. So can you change driver code like it was before ??
Project Member Comment 83 by samu...@chromium.org, Mar 10 2014
Before this can be implemented in ChromeDriver, there need to be some changes made to Chromium first. If you're interested in updates you can follow the issue on the Chromium tracker:

https://code.google.com/p/chromium/issues/detail?id=45209

Unfortunately it is not simple so I'm not sure how long it will take to implement. There are a few cases that make this difficult, such as how to take a full screenshot of a page that uses parallax scrolling.

If you haven't already, feel free to star the issue to get updates as well as to let the developers know you're interested.
I think most of us are using chromedriver screenshot to get automated screenshots of WHOLE web pages. Now this is not the case. Please fix it as soon as possible.
Comment 85 by c...@ckada.com, May 12 2014
I agree. If driver cannot get a fullpage screenshot, why should we use it?
Comment 86 Deleted
Comment 87 Deleted
any upates on this issue? plz fix asap thanks
Any update?. ChromeDriver is the best webdriver in terms of performance and stability but this issue make it inviable for use in many cases.
Comment 90 by pd.l...@gmail.com, Jun 27 2014
Just wondering if the development team intends to fix this issue / make this a feature. Or should we start modifying our test to do scrolling and taking screenshots?

Thanks.
Could you please fix this issue.
Thanks
Please fix this one.  I have to use Firefoxdriver for this to work.
Comment 93 Deleted
Please fix this as I'm starting to have crazy thoughts of using Firefox (AHHHHHH!!)
Everyone can use PhantomJs in the meantime, there even Selenium Phantom driver for this
http://phantomjs.org/screen-capture.html
Comment 96 by nirvd...@gmail.com, Aug 12 2014
Using a browser that isn't Chrome doesn't help anyone verifying results in Chrome, unfortunately.
Comment 97 by yona...@stylls.com, Aug 13 2014
PhantomJS is a good tool, however it does not support inline SVG filters
 
How did the first ChromeDriver worked? Was it some documented API for this? Can someone point to the source code of v1 ChromeDriver?
Comment 99 by xaen...@gmail.com, Aug 13 2014
They've said multiple times that there's an issue on the Chromium side that needs to be fixed first, https://code.google.com/p/chromium/issues/detail?id=45209 . Apparently the hook that Chromedriver used to use doesn't exist as of Chrome 29. 
Any updates on the resolution of this issue? 
Oh man, this is a shame.
Testing on Chrome is useless until this gets fixed.
Comment 103 by m.art...@u7.eu, Nov 21 2014
Since this is a completely different behavious as with firefox I cannot use this feature as a test means. Additionally there seems to be no reliable way to work around this with many variable height pages in our test setup.

So, +1 again, to fix this.
First of all, I love chrome, I love selenium, love all you developers...
Would you please help to fix this little issue as soon as you can????

Project Member Comment 105 by samu...@chromium.org, Feb 21 2015
Status: Untriaged
Please guys help us to use the scripts already created. It would cause lot of rework. This let us down on going for open source items in the future. Please help
I am able to capture the entire page screenshot using Java and C#
I just tried with latest chromedriver 2.14, no luck.
though chrome team providing snapshot as perceived by actual user as per project memebers comment,
there should be any config to provide full snapshot.
@venkates, please suggest if i am missing something.
 
and please also fix chrome driver of Android
Definitely a +1 to fix this! Very disappointing that we can get the full screen shot with FF but not Chrome. This makes certain test failures very difficult to debug.
@venkates, Did you do any special change in your code? 
I am using Python/Selenium/SauceLabs with Chrome 41.0 and I still getting this issue. I wrote a code to "page down" and take a screenshot until the end of the page. But this solution is not good and can take a lot of time. Would be much better if have the same behavior of FF or IE. 
Comment 112 by isha...@gmail.com, Apr 26 2015
2 years and no fix? That's not funny. At all
Ubuntu 14.04, chromedriver 2.15, Chrome 42.0 - still not fixed
Please fix this. 
any updates on this issue...please we're more liaising on chrome.driver. we're looking for this issue to be fixed very urgently to help us all.
Comment 115 by ses...@gmail.com, May 14 2015
Any updates on this issue? 
Please can this be resolved? I think its affecting many people, and some might think its a bug in their own applications
Please fix this. (:
WOW.  2 years later and still no fix.
This is really needed. FF and IE also have support for full-height screenshots.
Looks like still no updates on this
It seems everyone wants the full page screenshot, but I *want* the viewport screenshot.  The web pages that I'm testing change when scrolled and I want to capture intermediate stages.  Please don't take away the ability to screenshot just the visible area.
Also looking forward to getting this bug fixed.
To comment #107:- How were you able to take full page screen shot using Java? Could you please share your code.
Also looking forward to this fix
+1, we also want this feature back
This is really needed, it has been 2 years and no fix.
+1, for the full page screen shot
Definately a +
Interestingly Browserstacks Q&A says on https://www.browserstack.com/question/558

"Some of the results appear as full page while others do not. Are these results authentic?
We provide full page screenshots for all browsers, except Opera and Safari 5.1. For these browsers, we currently provide screenshots of the visible area of the page before scrolling. This is a technical limitation of the browser which we are working hard to overcome."

+1 for chromedriver
The FAQ in question (https://www.browserstack.com/question/558) refers to BrowserStack Screenshots, a separate product, entirely distinct from BrowserStack Automate. 

BrowserStack Screenshots supports full-page screenshots on all browsers, except Opera and Safari 5.1.

On BrowserStack Automate, full-page screenshots are not supported on Chrome v29 and above, because of the limitation in place by ChromeDriver v2.x.
Comment 131 by tob...@gmail.com, Jul 30 2015
Since Chrome is perfectly capable of taking a screenshot of the entire viewport I just resize the browser window to accomodate the entire page.

In Ruby it can be done as shown in this Gist: https://gist.github.com/elcamino/5f562564ecd2fb86f559
As the author of the screenshot system for CrossBrowserTesting.com, I can tell you that the only way we've been able to get full page screenshots consistently and reliably across browsers is to scroll, capture, and append images.  

Even in the case of FF or some IEs which do return a full screenshot from selenium, there are issues where some items don't show up until the page has been scrolled... case in point, www.msn.com doesn't show video images below-the-fold until the page has been scrolled:  http://media.crossbrowsertesting.com/users/197/screenshots/full/z5dfc08780d196eba5d5.png

We could offer a much faster service if reliability from selenium's screenshot was dependable, hence I check in from time to time to see if any progress has been made.  

However, now the W3C Specifies that WebDriver screenshots shall be viewport only: https://w3c.github.io/webdriver/webdriver-spec.html#screenshots

ChromeDriver team will probably not fix this.
Will have to test the Ruby implementation for resizing the browser to be fit the whole webpage.  Not sure that all OSs will let you do that... it's sort of what IEDriver is doing.

Another option using Java:
http://blog.xebia.in/2015/07/05/capture-full-page-screenshot-for-chrome-browser-in-selenium-webdriver/

Maybe someone knows workaround for screenshot issue for robot framework?
Is there a way to use extensions that currently support the scroll and stitch capability and use it with webdriver?

I have been waiting patiently for this feature to get addressed but it appears there is little to no work being done it seems.

Really hurting to find a work around now.
Comment 136 by sakha...@tutu.ru, Oct 20 2015
Please, fix this bug!
Almost 2 years later still no solution ? 
The above Ashot jar which can be used for full screen shots works properly with Windows ,but not with MAC systems..please suggest any other alternative.
Can we get a resolution for mac systems where full screen shot doesnt work.
Any plans to add this?
The full page screenshot still doesn't work on chrome driver, which works on IE driver. Are there any plans to fix the problem? Or is there any other way to achieve this requirement?
Comment 142 by bye...@gmail.com, Aug 4 2016
v2.22, still bad. 
Nothing change in the past 3 years.

Just wait.
Try using this library 

https://www.assertthat.com/posts/selenium_shutterbug_make_custom_screenshots_with_selenium_webdriver

Sources on github https://github.com/assertthat/selenium-shutterbug

Provides ability to make full page screenshot in Chrome and some other extended features, tested on Windows and OS X.

Any joy with a solution??
I am using chrome driver version 2.25 and still see only part of the screenshot. Is there any fix for this?
Still unable to capture full screenshot in chrome browser like FF and IE browsers,Please suggest if any one got solution to this issue.

Request you to fix this asap.
We are also looking for a way to create a full screenshot. Can't you enable the old feature (which worked, but wasn't 100% accurate) so we can at least use it as an alternative and create two screenshots (the accurate one, and the full but less accurate one)?

Best regards,
D.R.
Comment 148 Deleted
Comment 149 Deleted
There are two solutions at present for taking full page screenshots and both have issues:

1. Scroll the page, take screenshot of each "frame", then stitch them together

Issues:

- Fixed position elements will "follow" you down the page. You can prevent this by hiding them after the first frame.
- Any elements that change position based on scrollLeft/scrollTop will be potentially captured mid-transition (e.g. parallax).
- Anything animated (carousels, videos etc) captured across two frames will look weird.
- ANYTHING that happens on scroll event may cause weirdness and it's impossible to code for every edge case.

2. Find the full height of the page and resize the browser/viewport to this value

This is the preferred solution over the above, however:

Issue:

- Elements with height proportionate to viewport height (vh units in CSS) will resize e.g. if there's a "hero" section set at 90vh, when you resize the browser it will still take up 90% of the viewport and the screenshot is therefore useless.
I am also facing the same full page screenshot issue. I can see the two solutions in above. please share the script too..

Thanks in Advance
Comment 152 Deleted
Does this Chrome update have any effect in fixing the issue?
https://developers.google.com/web/updates/2017/04/devtools-release-notes#screenshots
It doesn't appear that the new built-in-to-chrome take full screenshot functionality is callable by API however it does now seem straight forward to implement using similar code? 

I think the path would be updating Chrome Devtools  Page.captureScreenshot
to have an additional item on either viewport or extra parameter for scrolling ...   and following that webdriver could take advantage of that.  The documented selenium preference for TakeScreenshot is then to prefer a scrolling screen shot ( https://seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/TakesScreenshot.html )


https://chromedevtools.github.io/devtools-protocol/tot/Page/ has the devtools information.
Status: Available
Sign in to add a comment