Closed
Bug 1735649
Opened 3 years ago
Closed 3 years ago
High frequency /webdriver/tests/get_window_rect/user_prompts.py | test_accept_and_notify[capabilities0-alert-None] - webdriver.error.JavascriptErrorException: javascript error (500): JavaScriptError: Document was unloaded
Categories
(Remote Protocol :: Marionette, defect, P5)
Remote Protocol
Marionette
Tracking
(firefox93 unaffected, firefox94 unaffected, firefox95 fixed)
RESOLVED
FIXED
95 Branch
Tracking | Status | |
---|---|---|
firefox93 | --- | unaffected |
firefox94 | --- | unaffected |
firefox95 | --- | fixed |
People
(Reporter: intermittent-bug-filer, Unassigned)
References
Details
(Keywords: intermittent-failure)
Filed by: csabou [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=354688486&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/aPiUwmTnR-unPVOWIIFI3A/runs/0/artifacts/public/logs/live_backing.log
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - TEST-PASS | /webdriver/tests/get_window_rect/user_prompts.py | test_accept[capabilities0-confirm-True]
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - TEST-PASS | /webdriver/tests/get_window_rect/user_prompts.py | test_accept[capabilities0-prompt-]
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - TEST-UNEXPECTED-FAIL | /webdriver/tests/get_window_rect/user_prompts.py | test_accept_and_notify[capabilities0-alert-None] - webdriver.error.JavascriptErrorException: javascript error (500): JavaScriptError: Document was unloaded
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - check_user_prompt_closed_with_exception = <function check_user_prompt_closed_with_exception.<locals>.check_user_prompt_closed_with_exception at 0x7fe50b8244d0>
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - dialog_type = 'alert', retval = None
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - @pytest.mark.capabilities({"unhandledPromptBehavior": "accept and notify"})
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - @pytest.mark.parametrize("dialog_type, retval", [
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - ("alert", None),
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - ("confirm", True),
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - ("prompt", ""),
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - ])
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - def test_accept_and_notify(check_user_prompt_closed_with_exception, dialog_type, retval):
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - > check_user_prompt_closed_with_exception(dialog_type, retval)
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - check_user_prompt_closed_with_exception = <function check_user_prompt_closed_with_exception.<locals>.check_user_prompt_closed_with_exception at 0x7fe50b8244d0>
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - dialog_type = 'alert'
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - retval = None
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - tests/web-platform/tests/webdriver/tests/get_window_rect/user_prompts.py:78:
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2021-10-13T20:43:02.869Z] 20:43:02 INFO - tests/web-platform/tests/webdriver/tests/get_window_rect/user_prompts.py:35: in check_user_prompt_closed_with_exception
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - create_dialog(dialog_type, text=dialog_type)
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - create_dialog = <function create_dialog.<locals>.create_dialog at 0x7fe50b824c20>
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - dialog_type = 'alert'
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - original_rect = {'height': 600, 'width': 800, 'x': 100, 'y': 100}
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - retval = None
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - session = <Session dfeb9acb-7af0-6044-aad9-d04dd664a879>
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - tests/web-platform/tests/webdriver/tests/support/fixtures_http.py:125: in create_dialog
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - """, args=(dialog_type, text))
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - dialog_type = 'alert'
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - session = <Session dfeb9acb-7af0-6044-aad9-d04dd664a879>
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - text = 'alert'
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:20: in inner
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - return func(self, *args, **kwargs)
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - args = ('\n'
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - ' let dialog_type = arguments[0];\n'
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - ' let text = arguments[1];\n'
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - '\n'
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - ' setTimeout(function() {\n'
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - " if (dialog_type == 'prompt') {\n"
[task 2021-10-13T20:43:02.870Z] 20:43:02 INFO - " window.dialog_return_value = window[dialog_type](text, '');\n"
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - ' } else {\n'
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - ' window.dialog_return_value = window[dialog_type](text);\n'
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - ' }\n'
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - ' }, 0);\n'
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - ' ',)
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - func = <function Session.execute_async_script at 0x7fe50b7b7cb0>
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - kwargs = {'args': ('alert', 'alert')}
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - self = <Session dfeb9acb-7af0-6044-aad9-d04dd664a879>
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - session = <Session dfeb9acb-7af0-6044-aad9-d04dd664a879>
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:786: in execute_async_script
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - return self.send_session_command("POST", "execute/async", body)
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - args = ('alert', 'alert')
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - body = {'args': ('alert', 'alert'),
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - 'script': '\n'
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - ' let dialog_type = arguments[0];\n'
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - ' let text = arguments[1];\n'
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - '\n'
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - ' setTimeout(function() {\n'
[task 2021-10-13T20:43:02.871Z] 20:43:02 INFO - " if (dialog_type == 'prompt') {\n"
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' window.dialog_return_value = '
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - "window[dialog_type](text, '');\n"
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' } else {\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' window.dialog_return_value = '
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - 'window[dialog_type](text);\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' }\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' }, 0);\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' '}
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - script = ('\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' let dialog_type = arguments[0];\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' let text = arguments[1];\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - '\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' setTimeout(function() {\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - " if (dialog_type == 'prompt') {\n"
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - " window.dialog_return_value = window[dialog_type](text, '');\n"
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' } else {\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' window.dialog_return_value = window[dialog_type](text);\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' }\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' }, 0);\n'
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - ' ')
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - self = <Session dfeb9acb-7af0-6044-aad9-d04dd664a879>
[task 2021-10-13T20:43:02.872Z] 20:43:02 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:654: in send_session_command
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - return self.send_command(method, url, body, timeout)
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - body = {'args': ('alert', 'alert'),
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - 'script': '\n'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - ' let dialog_type = arguments[0];\n'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - ' let text = arguments[1];\n'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - '\n'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - ' setTimeout(function() {\n'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - " if (dialog_type == 'prompt') {\n"
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - ' window.dialog_return_value = '
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - "window[dialog_type](text, '');\n"
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - ' } else {\n'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - ' window.dialog_return_value = '
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - 'window[dialog_type](text);\n'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - ' }\n'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - ' }, 0);\n'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - ' '}
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - method = 'POST'
[task 2021-10-13T20:43:02.873Z] 20:43:02 INFO - self = <Session dfeb9acb-7af0-6044-aad9-d04dd664a879>
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - timeout = None
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - uri = 'execute/async'
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - url = 'session/dfeb9acb-7af0-6044-aad9-d04dd664a879/execute/async'
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - self = <Session dfeb9acb-7af0-6044-aad9-d04dd664a879>, method = 'POST'
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - url = 'session/dfeb9acb-7af0-6044-aad9-d04dd664a879/execute/async'
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - body = {'args': ('alert', 'alert'), 'script': '\n let dialog_type = arguments[0];\n let text = argument... window.dialog_return_value = window[dialog_type](text);\n }\n }, 0);\n '}
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - timeout = None
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - def send_command(self, method, url, body=None, timeout=None):
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - """
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - Send a command to the remote end and validate its success.
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - :param method: HTTP method to use in request.
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - :param uri: "Command part" of the HTTP request URL,
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - e.g. `window/rect`.
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - :param body: Optional body of the HTTP request.
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - :return: `None` if the HTTP response body was empty, otherwise
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - the `value` field returned after parsing the response
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - body as JSON.
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - :raises error.WebDriverException: If the remote end returns
[task 2021-10-13T20:43:02.874Z] 20:43:02 INFO - an error.
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - :raises ValueError: If the response body does not contain a
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - `value` key.
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - """
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - response = self.transport.send(
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - method, url, body,
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - encoder=protocol.Encoder, decoder=protocol.Decoder,
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - session=self, timeout=timeout)
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - if response.status != 200:
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - err = error.from_response(response)
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - if isinstance(err, error.InvalidSessionIdException):
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - # The driver could have already been deleted the session.
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - self.session_id = None
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - > raise err
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - E webdriver.error.JavascriptErrorException: javascript error (500): JavaScriptError: Document was unloaded
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - E
[task 2021-10-13T20:43:02.875Z] 20:43:02 INFO - E Remote-end stacktrace:
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - E
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - E WebDriverError@chrome://remote/content/shared/webdriver/Errors.jsm:181:5
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - E JavaScriptError@chrome://remote/content/shared/webdriver/Errors.jsm:360:5
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - E evaluate.sandbox/promise</unloadHandler<@chrome://remote/content/marionette/evaluate.js:151:20
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - body = {'args': ('alert', 'alert'),
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - 'script': '\n'
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - ' let dialog_type = arguments[0];\n'
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - ' let text = arguments[1];\n'
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - '\n'
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - ' setTimeout(function() {\n'
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - " if (dialog_type == 'prompt') {\n"
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - ' window.dialog_return_value = '
[task 2021-10-13T20:43:02.876Z] 20:43:02 INFO - "window[dialog_type](text, '');\n"
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - ' } else {\n'
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - ' window.dialog_return_value = '
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - 'window[dialog_type](text);\n'
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - ' }\n'
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - ' }, 0);\n'
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - ' '}
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - err = <JavascriptErrorException http_status=500>
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - method = 'POST'
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - response = <Response status=500 error=<JavascriptErrorException http_status=500>>
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - self = <Session dfeb9acb-7af0-6044-aad9-d04dd664a879>
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - timeout = None
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - url = 'session/dfeb9acb-7af0-6044-aad9-d04dd664a879/execute/async'
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.877Z] 20:43:02 INFO - tests/web-platform/tests/tools/webdriver/webdriver/client.py:618: JavascriptErrorException
[task 2021-10-13T20:43:02.885Z] 20:43:02 INFO -
[task 2021-10-13T20:43:02.885Z] 20:43:02 INFO - TEST-PASS | /webdriver/tests/get_window_rect/user_prompts.py | test_accept_and_notify[capabilities0-confirm-True]
Comment 1•3 years ago
|
||
Only MacOS seems to be affected:
https://treeherder.mozilla.org/jobs?repo=autoland&searchStr=wd&fromchange=cf0395b37d9fbd241ff1e10e36645965dadfe94e&selectedTaskRun=COUSNUGVSc6Tb0_q-JUo6Q.0
Could someone please do a backfill? Thanks.
Flags: needinfo?(csabou)
Comment 2•3 years ago
•
|
||
Looks like it's one of these two bugs.
We might be better off with backing them out since they're not merged yet and handle the failures before the reland.
Flags: needinfo?(csabou)
Comment 3•3 years ago
|
||
Fixed by backing out Bug 1735500: https://bugzilla.mozilla.org/show_bug.cgi?id=1735500#c3
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Comment hidden (Intermittent Failures Robot) |
Updated•3 years ago
|
status-firefox93:
--- → unaffected
status-firefox94:
--- → unaffected
status-firefox95:
--- → fixed
Target Milestone: --- → 95 Branch
Comment hidden (Intermittent Failures Robot) |
Comment 6•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
•