Closed Bug 1826048 Opened 2 years ago Closed 2 years ago

TimedPromise should not be mentioned in TimeoutError message for timed out navigations

Categories

(Remote Protocol :: Marionette, defect, P1)

defect
Points:
1

Tracking

(firefox113 fixed)

RESOLVED FIXED
113 Branch
Tracking Status
firefox113 --- fixed

People

(Reporter: whimboo, Assigned: whimboo)

References

(Blocks 2 open bugs)

Details

(Whiteboard: [webdriver:m6])

Attachments

(1 file)

With the reduction of the default timeout for navigations and script evaluations we are now able to detect those commands which take a long time and when we cancel those.

For example bug 1825858 shows a timeout for a navigation:

[task 2023-03-31T18:30:01.585Z] 18:30:01     INFO - PID 3046 | 1680287401582	Marionette	DEBUG	0 -> [0,7,"WebDriver:Navigate",{"url":"file:///opt/worker/tasks/task_168028579458801/build/tests/web-platform/tests"}]
[task 2023-03-31T18:30:01.585Z] 18:30:01     INFO - PID 3046 | 1680287401584	Marionette	TRACE	[4] Received event beforeunload for about:blank
[task 2023-03-31T18:30:04.544Z] 18:30:04     INFO - PID 3046 | 1680287404544	Marionette	TRACE	Remoteness change detected. Set new top-level browsing context to 11
[task 2023-03-31T18:30:04.597Z] 18:30:04     INFO - PID 3046 | 1680287404596	Marionette	TRACE	[11] Received event beforeunload for about:blank
[task 2023-03-31T18:30:04.603Z] 18:30:04     INFO - PID 3046 | 1680287404603	Marionette	TRACE	[11] Received event pagehide for about:blank
[task 2023-03-31T18:30:04.729Z] 18:30:04     INFO - PID 3046 | 1680287404727	Marionette	DEBUG	0 <- [1,7,{"error":"timeout","message":"TimedPromise timed out after 3000 ms","stacktrace":"RemoteError@chrome://remote/content/shared/RemoteError.sys.mjs:8:8\nWebDriverError@chrome://remote/content/shared/webdriver/Er ... or@chrome://remote/content/shared/webdriver/Errors.sys.mjs:492:5\nbail@chrome://remote/content/marionette/sync.sys.mjs:211:19\n"},null]

Instead of using the default error message from the TimedPromise thrown error a custom message should be set for WebDriver:Navigate, WebDriver:ExecuteScript and WebDriver:ExecuteAsyncScript that will actually mention what went wrong. Here an example for a navigation:

Navigation to "https://example.com" timed out after 3000ms

As follow-up we could then also add more details about the exact failure (if one is present from the platform) over on bug 1312679.

No longer blocks: 1825858
Blocks: 1760291
Blocks: 1825501

Actually it's only navigation that is affected here.

Summary: TimedPromise should not be mentioned in TimeoutError for navigation and script evaluation → TimedPromise should not be mentioned in TimeoutError message for timed out navigations
Assignee: nobody → hskupin
Status: NEW → ASSIGNED
Points: --- → 1
Priority: -- → P1
Whiteboard: [webdriver:m6]
Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2695b39e9679 [marionette] Don't mention TimedPromise in navigation timeout error message. r=webdriver-reviewers,jdescottes
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 113 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: