-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Introduce tests sharding #21101
Merged
Merged
Introduce tests sharding #21101
Changes from 20 commits
Commits
Show all changes
23 commits
Select commit
Hold shift + click to select a range
168a994
Add and configure `fladle` Gradle plugin
wzieba ceb5d82
Run instrumented tests via fladle
wzieba e96ee1a
Update `firebase.secrets.json` path
wzieba 99d5c67
Fix path to secrets
wzieba 9e6afa0
Fix setting up paths for debug and instrumentation apks
wzieba 3e93f61
Fix copying test logs for test collector
wzieba 14ba431
Set different paths for smart flank report file
wzieba d36b4a9
Make Buildkite annotation work
wzieba 3d7c853
temp: break instrumentation tests
wzieba cd01ef0
Fix Ruby formatting in test.rb
wzieba a462b4d
Use double asterix wildcard to locate matrix ids
wzieba 4882026
Use relative path to locate matrix ids
wzieba 7c69f45
Fix invalid matrix_ids relative path
wzieba 9616d52
Set correct relative path
wzieba cc83564
Fix path for instrumented-tests result file
wzieba c1ef744
Revert "temp: break instrumentation tests"
wzieba cc4cc3b
Ignore `e2eAllDayStatsLoad` in `wordpress` variant
wzieba 10c9a74
Update order of `testTargets`
wzieba 997e808
rescue on `StandardError` when instrumentation tests fail
wzieba e7d901b
Break down `jq` command and its arguments
wzieba 4d7c0b7
Split `pathForVariant` into two methods
wzieba 9c05ddd
Add a comment about ignoring specific tests on WordPress variant when…
wzieba 40986a8
Merge branch 'trunk' into introduce_tests_sharding
wzieba File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.
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.
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.
for test targets unavailable on the variant, do we need to define them here to be excluded?
asking because when looking at the tests, it looks like there's a check to see if it's jetpack app before continuing with test setup:
WordPress-Android/WordPress/src/androidTest/java/org/wordpress/android/e2e/StatsGranularTabsTest.kt
Line 24 in a93b999
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.
Unfortunately, they have to. If they're not,
fladle/flank
might create a shard with only tests fromStatsTests
orStatsGranularTabsTest
. As they're ignored, the execution will be very fast (few seconds) and Firebase Test Lab will mark the test run as failed. It will do this to signal a problem, as too aggressive sharding might bring more unwanted costs. Some more details are available in here the comment description: cc4cc3b . Failed run like this can be found here https://buildkite.com/automattic/wordpress-android/builds/19467#01910e2f-5783-4f74-8897-2725f66ce343There 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.
I see, thanks for the detailed explanation and linking that commit's comment description! What do you think about adding a comment on the test too? So we would know for a future test that's only available on one variant we should add it to the exclusion list too
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.
Sure thing, added a comment! WDYT?
9c05ddd