Closed Bug 1490714 Opened 5 years ago Closed 5 years ago

Intermittent /webdriver/tests/get_window_rect/user_prompts.py | test_accept[capabilities0-alert-None] - setup error

Categories

(Remote Protocol :: Marionette, defect, P5)

Version 3
defect

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: intermittent-bug-filer, Unassigned)

References

Details

(Keywords: intermittent-failure)

Filed by: ncsoregi [at] mozilla.com

https://treeherder.mozilla.org/logviewer.html#?job_id=198873252&repo=autoland

https://queue.taskcluster.net/v1/task/Ms0gEsMxS3yrxCHL_bz7sg/runs/0/artifacts/public/logs/live_backing.log

07:28:53     INFO - STDOUT: self = <Session (disconnected)>, method = 'POST', url = 'session'
07:28:53     INFO - STDOUT: body = {'capabilities': {'alwaysMatch': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1536762043/build/applicat...latform.test,www.web-platform.test,xn--n8j6ds53lwwkrqhv28a.web-platform.test'}}, 'unhandledPromptBehavior': 'accept'}}}
07:28:53     INFO - STDOUT:     def send_command(self, method, url, body=None):
07:28:53     INFO - STDOUT:         """
07:28:53     INFO - STDOUT:             Send a command to the remote end and validate its success.
07:28:53     INFO - STDOUT:     
07:28:53     INFO - STDOUT:             :param method: HTTP method to use in request.
07:28:53     INFO - STDOUT:             :param uri: "Command part" of the HTTP request URL,
07:28:53     INFO - STDOUT:                 e.g. `window/rect`.
07:28:53     INFO - STDOUT:             :param body: Optional body of the HTTP request.
07:28:53     INFO - STDOUT:     
07:28:53     INFO - STDOUT:             :return: `None` if the HTTP response body was empty, otherwise
07:28:53     INFO - STDOUT:                 the `value` field returned after parsing the response
07:28:53     INFO - STDOUT:                 body as JSON.
07:28:53     INFO - STDOUT:     
07:28:53     INFO - STDOUT:             :raises error.WebDriverException: If the remote end returns
07:28:53     INFO - STDOUT:                 an error.
07:28:53     INFO - STDOUT:             :raises ValueError: If the response body does not contain a
07:28:53     INFO - STDOUT:                 `value` key.
07:28:53     INFO - STDOUT:             """
07:28:53     INFO - STDOUT:         response = self.transport.send(
07:28:53     INFO - STDOUT:             method, url, body,
07:28:53     INFO - STDOUT:             encoder=protocol.Encoder, decoder=protocol.Decoder,
07:28:53     INFO - STDOUT:             session=self)
07:28:53     INFO - STDOUT:     
07:28:53     INFO - STDOUT:         if response.status != 200:
07:28:53     INFO - STDOUT:             err = error.from_response(response)
07:28:53     INFO - STDOUT:     
07:28:53     INFO - STDOUT:             if isinstance(err, error.InvalidSessionIdException):
07:28:53     INFO - STDOUT:                 # The driver could have already been deleted the session.
07:28:53     INFO - STDOUT:                 self.session_id = None
07:28:53     INFO - STDOUT:     
07:28:53     INFO - STDOUT: >           raise err
07:28:53     INFO - STDOUT: E           UnknownErrorException: unknown error (500): Failed to decode response from marionette
07:28:53     INFO - STDOUT: body       = {'capabilities': {'alwaysMatch': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1536762043/build/applicat...latform.test,www.web-platform.test,xn--n8j6ds53lwwkrqhv28a.web-platform.test'}}, 'unhandledPromptBehavior': 'accept'}}}
07:28:53     INFO - STDOUT: err        = <UnknownErrorException http_status=500>
07:28:53     INFO - STDOUT: method     = 'POST'
07:28:53     INFO - STDOUT: response   = <Response status=500 error=<UnknownErrorException http_status=500>>
07:28:53     INFO - STDOUT: self       = <Session (disconnected)>
07:28:53     INFO - STDOUT: url        = 'session'
07:28:53     INFO - STDOUT: tests/web-platform/tests/tools/webdriver/webdriver/client.py
07:28:53     INFO - STDOUT: :473: UnknownErrorException
07:28:53     INFO - STDOUT: =============================== warnings summary ===============================
07:28:53     INFO - STDOUT: <undetermined location>
07:28:53     INFO - STDOUT:   Module already imported so cannot be rewritten: mozlog
07:28:53     INFO - STDOUT: -- Docs: http://doc.pytest.org/en/latest/warnings.html
07:28:53     INFO - STDOUT: =============== 17 passed, 1 warnings, 1 error in 28.20 seconds ================
07:28:53     INFO - 
07:28:53     INFO - TEST-UNEXPECTED-ERROR | /webdriver/tests/get_window_rect/user_prompts.py | test_accept[capabilities0-alert-None] - setup error
07:28:53     INFO - capabilities = {'unhandledPromptBehavior': 'accept'}
07:28:53     INFO - configuration = {'capabilities': {'moz:firefoxOptions': {'binary': '/Users/cltbld/tasks/task_1536762043/build/application/Firefox Nigh...b-platform.test,www.web-platform.test,xn--n8j6ds53lwwkrqhv28a.web-platform.test'}}}, 'host': '127.0.0.1', 'port': 4444}
07:28:53     INFO - request = <SubRequest 'session' for <Function 'test_accept[capabilities0-alert-None]'>>
07:28:53     INFO - 
07:28:53     INFO -     @pytest.fixture(scope="function")
07:28:53     INFO -     def session(capabilities, configuration, request):
07:28:53     INFO -         """Create and start a session for a test that does not itself test session creation.
07:28:53     INFO -     
07:28:53     INFO -         By default the session will stay open after each test, but we always try to start a
07:28:53     INFO -         new one and assume that if that fails there is already a valid session. This makes it
07:28:53     INFO -         possible to recover from some errors that might leave the session in a bad state, but
07:28:53     INFO -         does not demand that we start a new session per test."""
07:28:53     INFO -         global _current_session
07:28:53     INFO -     
07:28:53     INFO -         # Update configuration capabilities with custom ones from the
07:28:53     INFO -         # capabilities fixture, which can be set by tests
07:28:53     INFO -         caps = copy.deepcopy(configuration["capabilities"])
07:28:53     INFO -         caps.update(capabilities)
07:28:53     INFO -         caps = {"alwaysMatch": caps}
07:28:53     INFO -     
07:28:53     INFO -         # If there is a session with different capabilities active, end it now
07:28:53     INFO -         if _current_session is not None and (
07:28:53     INFO -                 caps != _current_session.requested_capabilities):
07:28:53     INFO -             _current_session.end()
07:28:53     INFO -             _current_session = None
07:28:53     INFO -     
07:28:53     INFO -         if _current_session is None:
07:28:53     INFO -             _current_session = webdriver.Session(
07:28:53     INFO -                 configuration["host"],
07:28:53     INFO -                 configuration["port"],
07:28:53     INFO -                 capabilities=caps)
07:28:53     INFO -         try:
07:28:53     INFO - >           _current_session.start()
07:28:53     INFO -
Firefox crashed. But due to bug 1490906 we don't print crash information yet.
https://wiki.mozilla.org/Bug_Triage#Intermittent_Test_Failure_Cleanup
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → INCOMPLETE
Moving bug to Remote Protocol::Marionette component per bug 1815831.
Component: geckodriver → Marionette
Product: Testing → Remote Protocol
You need to log in before you can comment on or make changes to this bug.