Closed
Bug 1668282
Opened 4 years ago
Closed 4 years ago
Intermittent /webdriver/tests/perform_actions/pointer.py | test_no_browsing_context - UnknownErrorException: unknown error (500): TypeError: can't access dead object
Categories
(Remote Protocol :: Marionette, defect, P5)
Remote Protocol
Marionette
Tracking
(firefox83 fixed)
RESOLVED
FIXED
83 Branch
Tracking | Status | |
---|---|---|
firefox83 | --- | fixed |
People
(Reporter: intermittent-bug-filer, Assigned: whimboo)
References
Details
(Keywords: intermittent-failure)
Filed by: michael [at] masterwayz.nl
Parsed log: https://treeherder.mozilla.org/logviewer.html#?job_id=317143126&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/AWGkNMs6Q82jP7MtGPFmnw/runs/0/artifacts/public/logs/live_backing.log
[task 2020-09-30T11:58:21.405Z] 11:58:21 INFO - TEST-UNEXPECTED-FAIL | /webdriver/tests/perform_actions/pointer.py | test_no_browsing_context - UnknownErrorException: unknown error (500): TypeError: can't access dead object
[task 2020-09-30T11:58:21.405Z] 11:58:21 INFO - session = <Session 3d0bcd0e-2174-4a8a-a731-d132908ac967>, closed_frame = None
[task 2020-09-30T11:58:21.405Z] 11:58:21 INFO - mouse_chain = <webdriver.client.ActionSequence object at 0x7f869f4c6c50>
[task 2020-09-30T11:58:21.406Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.406Z] 11:58:21 INFO - def test_no_browsing_context(session, closed_frame, mouse_chain):
[task 2020-09-30T11:58:21.406Z] 11:58:21 INFO - with pytest.raises(NoSuchWindowException):
[task 2020-09-30T11:58:21.406Z] 11:58:21 INFO - > mouse_chain.click().perform()
[task 2020-09-30T11:58:21.406Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - closed_frame = None
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - mouse_chain = <webdriver.client.ActionSequence object at 0x7f869f4c6c50>
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - session = <Session 3d0bcd0e-2174-4a8a-a731-d132908ac967>
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - tests/web-platform/tests/webdriver/tests/perform_actions/pointer.py:31:
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:19: in inner
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - return func(self, *args, **kwargs)
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:114: in perform
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - self.session.actions.perform([self.dict])
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:19: in inner
[task 2020-09-30T11:58:21.407Z] 11:58:21 INFO - return func(self, *args, **kwargs)
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:246: in perform
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - actions = self.session.send_session_command("POST", "actions", body)
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:546: in send_session_command
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - return self.send_command(method, url, body, timeout)
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - self = <Session 3d0bcd0e-2174-4a8a-a731-d132908ac967>, method = 'POST'
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - url = 'session/3d0bcd0e-2174-4a8a-a731-d132908ac967/actions'
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - body = {'actions': [{'actions': [{'button': 0, 'type': 'pointerDown'}, {'button': 0, 'type': 'pointerUp'}], 'id': 'pointer_id', 'parameters': {'pointerType': 'mouse'}, 'type': 'pointer'}]}
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - timeout = None
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - def send_command(self, method, url, body=None, timeout=None):
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - """
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO - Send a command to the remote end and validate its success.
[task 2020-09-30T11:58:21.408Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - :param method: HTTP method to use in request.
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - :param uri: "Command part" of the HTTP request URL,
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - e.g. `window/rect`.
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - :param body: Optional body of the HTTP request.
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - :return: `None` if the HTTP response body was empty, otherwise
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - the `value` field returned after parsing the response
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - body as JSON.
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - :raises error.WebDriverException: If the remote end returns
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - an error.
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - :raises ValueError: If the response body does not contain a
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - `value` key.
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO - """
[task 2020-09-30T11:58:21.409Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - response = self.transport.send(
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - method, url, body,
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - encoder=protocol.Encoder, decoder=protocol.Decoder,
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - session=self, timeout=timeout)
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - if response.status != 200:
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - err = error.from_response(response)
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - if isinstance(err, error.InvalidSessionIdException):
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - # The driver could have already been deleted the session.
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - self.session_id = None
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - > raise err
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - E UnknownErrorException: unknown error (500): TypeError: can't access dead object
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - E
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - E Remote-end stacktrace:
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - E
[task 2020-09-30T11:58:21.410Z] 11:58:21 INFO - E event.synthesizeMouseAtPoint@chrome://marionette/content/event.js:165:18
[task 2020-09-30T11:58:21.411Z] 11:58:21 INFO - E dispatchPointerDown/<@chrome://marionette/content/action.js:1265:15
[task 2020-09-30T11:58:21.411Z] 11:58:21 INFO - E dispatchPointerDown@chrome://marionette/content/action.js:1242:10
[task 2020-09-30T11:58:21.411Z] 11:58:21 INFO - E toEvents/<@chrome://marionette/content/action.js:1143:16
[task 2020-09-30T11:58:21.411Z] 11:58:21 INFO - E action.dispatchTickActions@chrome://marionette/content/action.js:1059:35
[task 2020-09-30T11:58:21.411Z] 11:58:21 INFO - E action.dispatch/chainEvents<@chrome://marionette/content/action.js:1027:20
[task 2020-09-30T11:58:21.411Z] 11:58:21 INFO - E action.dispatch@chrome://marionette/content/action.js:1033:5
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - E performActions@chrome://marionette/content/listener.js:434:16
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - E dispatch/</req<@chrome://marionette/content/listener.js:107:17
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - E dispatch/<@chrome://marionette/content/listener.js:102:15
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO -
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - body = {'actions': [{'actions': [{'button': 0, 'type': 'pointerDown'}, {'button': 0, 'type': 'pointerUp'}], 'id': 'pointer_id', 'parameters': {'pointerType': 'mouse'}, 'type': 'pointer'}]}
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - err = <UnknownErrorException http_status=500>
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - method = 'POST'
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - response = <Response status=500 error=<UnknownErrorException http_status=500>>
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - self = <Session 3d0bcd0e-2174-4a8a-a731-d132908ac967>
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - timeout = None
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - url = 'session/3d0bcd0e-2174-4a8a-a731-d132908ac967/actions'
[task 2020-09-30T11:58:21.412Z] 11:58:21 INFO - ```
Assignee | ||
Comment 1•4 years ago
|
||
Race between closing the frame and running the next command. It needs a fix for bug 1666204.
Depends on: 1666204
Comment hidden (Intermittent Failures Robot) |
Assignee | ||
Comment 3•4 years ago
|
||
Marking as fixed by bug 1666204.
Assignee: nobody → hskupin
Status: NEW → RESOLVED
Closed: 4 years ago
status-firefox83:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → 83 Branch
Comment 4•2 years ago
|
||
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.
Description
•