test: improve TabBarComponent retry logic to reduce trade smoke flakiness#28144
Draft
dylanbutler1 wants to merge 1 commit intomainfrom
Draft
test: improve TabBarComponent retry logic to reduce trade smoke flakiness#28144dylanbutler1 wants to merge 1 commit intomainfrom
dylanbutler1 wants to merge 1 commit intomainfrom
Conversation
…ness Split tapAccountsMenu() into two separately retried steps — first tapWallet() (which has its own retry) then the hamburger→accounts menu navigation — so that a failure opening the menu doesn't restart wallet navigation from scratch. Also wrap tapActions() and tapTrade() with executeWithRetry + validation assertion to match the resilient pattern used by other tab bar methods. Made-with: Cursor
Contributor
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
Contributor
🔍 Smart E2E Test Selection⏭️ Smart E2E selection skipped - draft PR All E2E tests pre-selected. |
Contributor
|
✅ E2E Fixture Validation — Schema is up to date |
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
The
trade-ios-smoke-1CI job has been flaky since ~Feb 26. Investigation traced one contributing cause totapAccountsMenu()(formerlytapSettings()via PR #26568), which wrapped a multi-step navigation sequence (wallet tap → assert wallet → hamburger tap → assert menu) in a singleexecuteWithRetryblock. When any intermediate step failed, the retry restarted the entire sequence from scratch, potentially tapping wallet mid-navigation and leaving the app in a broken state.This PR makes three improvements to
TabBarComponent:Split
tapAccountsMenu()into two separately retried steps: First callsthis.tapWallet()(which already has its own retry + validation pattern), then retries only the hamburger→accounts menu step independently. A failure opening the accounts menu no longer restarts wallet navigation.Add retry logic to
tapActions(): Was a bareUnifiedGestures.waitAndTap()without any retry or validation. Now wrapped inexecuteWithRetrywith a visibility assertion on the actions bottom sheet swap button.Add retry logic to
tapTrade(): Same treatment astapActions()— wrapped inexecuteWithRetrywith validation.Both
tapActions()andtapTrade()now follow the same resilient pattern used bytapWallet(),tapExploreButton(),tapActivity(), andtapRewards().Changelog
CHANGELOG entry: null
Related issues
Refs: #26568
Manual testing steps
Screenshots/Recordings
N/A — no UI changes, E2E test infrastructure only.
Before
N/A
After
N/A
Pre-merge author checklist
Pre-merge reviewer checklist
Made with Cursor