Closed Bug 1760554 Opened 2 years ago Closed 1 year ago

[wdspec] Reducing default timeouts for implicit waits, navigation and script execution

Categories

(Remote Protocol :: Marionette, task, P1)

task
Points:
1

Tracking

(firefox113 fixed)

RESOLVED FIXED
113 Branch
Tracking Status
firefox113 --- fixed

People

(Reporter: whimboo, Assigned: whimboo)

References

(Blocks 1 open bug, Regressed 1 open bug)

Details

(Whiteboard: [webdriver:m6])

Attachments

(1 obsolete file)

Given that all the navigation commands in wdspec are done against the local wptserve instance I feel that we should lower the default navigation timeout and not use the default value of 300s as specified by the WebDriver spec.

IMHO 30s should be more than enough and we might even have shorter ones. Tests that require a longer timeout could override it instead.

Lets get it discussed today.

Blocks: 1760291

Lets reduce it as much as possible and test it on try. We could even check with shorter than 30s.

Whiteboard: [webdriver:triage]
Priority: -- → P3
Blocks: 1769444
Blocks: 1770612

Note that by default wdspec tests have a default timeout of 25s for the whole test file! That means having 30s as mentioned above would not help at all and the full file would run into a timeout again.

As discussed we could go with 5-10s by default for opt builds and everything that requests pages via wptserve or local. We should apply the appropriate multiplier for special builds. Lets get some try jobs running to verify the correct behavior.

When removing the triage keyword I missed to set the backlog whiteboard entry. We should keep this on our radar in case of a higher timeout rate.

Whiteboard: [webdriver:backlog]
Component: geckodriver → Marionette
Product: Testing → Remote Protocol
Version: Default → Trunk

I think that we should not blindly set 5-10s but should make it dependent on the type of build. As such it would be good to have the RunInfo available (bug 1814128).

Depends on: 1814128

Basically this should not only be set for the page_load timeout but also for script and implicit (which is 0 anyway). So this will reduce the risk of running into test timeouts due to long script evaluation as well.

For a test I pushed a try build for page_load set to 3s and script set to 1s:
https://treeherder.mozilla.org/jobs?repo=try&revision=0608e05ce06ce0697a5ae2c801354cf8cc9979fc

Summary: [wdspec] Consider reducing default navigation timeout of 300s → [wdspec] Reducing default timeouts for implicit waits, navigation and script execution

Timeouts are based on the timeout multiplier as determinted
by the wptrunner to allow longer timeout for slow running builds.

Assignee: nobody → hskupin
Status: NEW → ASSIGNED
Priority: P3 → P1
Whiteboard: [webdriver:backlog] → [webdriver:m6]
Points: --- → 1
Depends on: 1822836
Attachment #9323468 - Attachment is obsolete: true

The patch has been merged upstream and will by synced with the next wpt downstream sync on bug 1822836.

No longer depends on: 1814128

Fixed by the downstream sync on bug 1822836.

Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 113 Branch
Regressions: 1825501
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: