-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
test: bump detox + implement dynamic scroll in e2e tests #8174
Conversation
Updated dependencies detected. Learn more about Socket for GitHub ↗︎
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #8174 +/- ##
=======================================
Coverage 39.61% 39.61%
=======================================
Files 1233 1233
Lines 29810 29810
Branches 2839 2839
=======================================
Hits 11810 11810
Misses 17306 17306
Partials 694 694 ☔ View full report in Codecov by Sentry. |
E2E test started on Bitrise: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/029320f5-67f2-4af8-a828-dc829fd157db |
What's the difference between the scroll before and dynamic scrolling? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
left some comments
The way we scrolled before was non-deterministic. Depending on various screen sizes, whenever we scroll, the element may or may not be visible. This PR introduces a way to scroll by a defined number of pixels until the desired element is visible. |
E2E test started on Bitrise: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/65b897eb-189f-4850-9743-1eaf80b14ac9 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lgtm
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. |
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
E2E test started on Bitrise: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/af5faf99-d294-4d74-a80e-294a9dc317b4 |
Description
The purpose of this PR is to accomplish two things:
bump detox version (this hasn't been done in a couple of months)
Implement dynamic scroll in tests
Previously, the use of APIs higher than 30 was hindered by an Android blocker on Detox's end. As mentioned in #6384
With this new detox version bump, the blocker has been lifted, allowing us to utilize Android 31+.
Furthermore, how we scroll to elements introduces flakiness. Instead of hardcoding a scroll speed in tests, we will now introduce dynamic scrolling. We will scroll on a view until the element is visible within the viewport. This was done using whileElement
Related issues
Fixes:
Manual testing steps
Screenshots/Recordings
Before
After
Smoke run: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/42936d4e-1df8-40ca-bd88-4f408cdd655a
Regression Run: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/cb83ae29-a0a4-49f5-a2f5-7c6683bf38e3
Pre-merge author checklist
Pre-merge reviewer checklist