test: Fix flaky test "lockdown the UI and background environments are locked down" #24812
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR addresses the flaky 'lockdown' e2e test, specifically when running in Firefox, which is a tricky one.
Root Cause: The flakiness is caused by the rapid execution of the lockdown test script in Firefox immediately after navigating to the BACKGROUND page. This quick transition did not allow sufficient time for the environment to stabilize, preventing the script from accurately assessing the lockdown state.
Fix Implemented: To mitigate this issue, I introduced a
await driver.delay(1000)
after navigating to the BACKGROUND page and before executing the lockdown test script. This brief pause ensures that the environment is fully loaded and stable, allowing the script to run under consistent conditions and accurately verify the lockdown state.While I'm agree that the use of delay should be minimized, this test's specific nature and the absence of a way to use the driver to wait for an element's status makes it necessary to use the delay() method.
Results:
Before the Fix: The flakiness could be reproduced locally on Firefox with approximately a 30% occurrence rate.
After the Fix: After implementing the changes, I ran the test 20 consecutive times without encountering any flakiness, demonstrating the effectiveness of the fix.
Related issues
Fixes: #24621
Manual testing steps
Screenshots/Recordings
Before
After
Pre-merge author checklist
Pre-merge reviewer checklist