Closed
Bug 1195157
Opened 9 years ago
Closed 9 years ago
Marionette Screenshot Functions with Wires is hanging Firefox
Categories
(Remote Protocol :: Marionette, defect)
Remote Protocol
Marionette
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: joshin4colours, Unassigned)
Details
(Keywords: pi-marionette-server, Whiteboard: [marionette=1.0])
Attachments
(1 file)
7.53 KB,
text/plain
|
Details |
User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:40.0) Gecko/20100101 Firefox/40.0 Build ID: 20150807085045 Steps to reproduce: I ran the following tests using py.test and Python 2.7.6 with Firefox Developer Edition 41.0a2 (2015-08-06) on a Win 8.1 machine: from selenium import webdriver from selenium.webdriver.common.desired_capabilities import DesiredCapabilities from selenium.webdriver.support.ui import WebDriverWait from time import sleep import unittest class TestScreenshots(unittest.TestCase): def test_file(self): firefox_capabilities = DesiredCapabilities.FIREFOX firefox_capabilities['marionette'] = True firefox_capabilities['binary'] = 'C:\\Program Files (x86)\\Firefox Developer Edition\\firefox.exe' driver = webdriver.Firefox(capabilities=firefox_capabilities) driver.get('http://the-internet.herokuapp.com/') sleep(5) driver.get_screenshot_as_file('shot_basic.png') sleep(5) driver.quit() def test_png(self): firefox_capabilities = DesiredCapabilities.FIREFOX firefox_capabilities['marionette'] = True firefox_capabilities['binary'] = 'C:\\Program Files (x86)\\Firefox Developer Edition\\firefox.exe' driver = webdriver.Firefox(capabilities=firefox_capabilities) driver.get('http://the-internet.herokuapp.com/') sleep(5) sc = driver.get_screenshot_as_png() sleep(5) driver.quit() def test_base64(self): firefox_capabilities = DesiredCapabilities.FIREFOX firefox_capabilities['marionette'] = True firefox_capabilities['binary'] = 'C:\\Program Files (x86)\\Firefox Developer Edition\\firefox.exe' driver = webdriver.Firefox(capabilities=firefox_capabilities) driver.get('http://the-internet.herokuapp.com/') sleep(5) sc = driver.get_screenshot_as_base64() assert Type(sc) is 'string' driver.quit() Actual results: Running these tests, both test_base64 and test_file crash Firefox Dev Edition at the take_screenshot steps. Firefox hangs, then must be manually aborted, causing py.test to stop. In these cases, the stack trace is the same as the attached test result. Expected results: The tests should've executed cleanly and presumably a screenshot file or string would have been created.
Updated•9 years ago
|
Keywords: ateam-marionette-server
Whiteboard: [marionette=1.0]
Comment 1•9 years ago
|
||
I have been able to recreate this on OSX easily. Interestingly the browser doesnt appear to hang when using Marionette directly (not with Wires). The marionette screenshot tests whip through. There is no coverage in the Selenium python tree so will be adding tests there now to help debug the issue
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: Marionette Screenshot Functions with Wires on Windows is Crashing Firefox → Marionette Screenshot Functions with Wires is hanging Firefox
Comment 2•9 years ago
|
||
I think this might be related to the size of the packet that is sent back to wires. Using a page bigger than the view port with Wires it hangs however with a small page, like the ones used on the marionette test suite, it passes. Using the bigger page on direct marionette (with marionette transport) it passes.
Comment 3•9 years ago
|
||
landed some tests in the selenium master. James, can you see if my hypothesis is correct that Wires is struggling with packet size? Or tell me the best way to debug wires for this?
Flags: needinfo?(james)
Comment 4•9 years ago
|
||
Can you show me the log you are getting? When I ran it it looked as though the tests were succeeding, but something was hanging later in shutdown.
Flags: needinfo?(james)
Comment 5•9 years ago
|
||
I think that the issue is related to Selenium holding onto the output from stdout/strerr. Since Marionette/Wires can be verbose it hit the threshold very quickly. I think this is fixed in https://github.com/SeleniumHQ/selenium/commit/bea95161369afad41b09f3e1892c8aaf8f283d82 At least I am not hitting the issue any more locally.
Comment 6•9 years ago
|
||
This issue has now cleared up so closing as it was a selenium issue
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Updated•1 year ago
|
Product: Testing → Remote Protocol
You need to log in
before you can comment on or make changes to this bug.
Description
•