-
Notifications
You must be signed in to change notification settings - Fork 119
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
JUnitReport.xml only includes 50 tests out of 73 #1634
Comments
Hey 👋
There is not, There should be Do you have parameterized tests? Sorry for a bunch of questions, it will help us to track the problem :) |
Ah, I think I've found something... |
@pawelpasterz the I am trying to update to Thank you for jumping on this issue so quickly. |
NP :)
|
Ok, it may take more time than I expected to run flank with I noticed a strange coincidence that the smart flank cache hit is 50 / 73, and that's the number of tests that I see in JUnitReport. Can this be an issue 🤔 ?
|
That's definitely valuable info for us. Do you have parameterized tests? |
|
The {
"matrix-0": {
"app": ".../build/testlab/dummy.apk",
"test": ".../debug-androidTest.apk",
"shards": {
"shard-0": [
"class a.a.a.a.a.a.A#a",
"class a.a.a.a.a.a.A#b",
"class a.a.a.a.a.a.A#c",
"class a.a.a.a.a.a.A#d",
"class a.a.a.a.a.a.A#e",
"class a.a.a.a.a.a.A#f",
"class a.a.a.a.a.a.A#g",
"class a.a.a.a.a.a.A#h",
"class a.a.a.a.a.a.A#i",
"class a.a.a.a.a.a.A#j",
"class a.a.a.a.a.a.A#k",
"class a.a.a.a.a.a.A#l",
"class a.a.a.a.a.a.B#a",
"class a.a.a.a.a.a.B#b",
"class a.a.a.a.a.a.B#c",
"class a.a.a.a.a.a.B#d",
"class a.a.a.a.a.a.B#e",
"class a.a.a.a.a.a.B#f",
"class a.a.a.a.a.a.B#g",
"class a.a.a.a.a.a.B#h",
"class a.a.a.a.a.a.B#i",
"class a.a.a.a.a.a.B#j",
"class a.a.a.a.a.a.B#k",
"class a.a.a.b.a.a.A#a",
"class a.a.a.b.a.a.A#b",
"class a.a.a.a.a.a.C#a",
"class a.a.a.a.a.b.A#a",
"class a.a.a.a.a.b.A#b",
"class a.a.a.b.a.a.A#c",
"class a.a.a.b.a.a.A#d",
"class a.a.a.b.a.a.A#e",
"class a.a.a.b.a.a.A#f",
"class a.a.a.b.a.a.A#g",
"class a.a.a.a.a.a.D#a",
"class a.a.a.a.a.a.E#a",
"class a.a.a.a.a.A#a",
"class a.a.a.a.a.a.C#b",
"class a.a.a.a.a.a.C#c",
"class a.a.a.a.a.A#b",
"class a.a.a.a.a.A#c",
"class a.a.a.a.a.A#d",
"class a.a.a.a.a.A#e",
"class a.a.a.a.a.A#f",
"class a.a.a.a.a.A#g",
"class a.a.a.a.a.A#h",
"class a.a.a.a.a.A#i",
"class a.a.a.a.a.A#j",
"class a.a.a.a.a.a.D#b",
"class a.a.a.a.a.a.D#c",
"class a.a.a.a.a.a.D#d",
"class a.a.a.a.a.a.D#e",
"class a.a.a.a.a.a.D#f",
"class a.a.a.a.a.a.D#g",
"class a.a.a.a.a.a.D#h",
"class a.a.a.a.a.a.B#l",
"class a.a.a.a.a.a.B#m",
"class a.a.a.a.a.a.B#n",
"class a.a.a.a.a.a.B#o",
"class a.a.a.a.a.a.B#p",
"class a.a.a.a.a.a.E#b",
"class a.a.a.a.a.a.F#a",
"class a.a.a.a.a.a.F#b",
"class a.a.a.a.a.a.F#c",
"class a.a.a.a.a.a.F#d",
"class a.a.a.a.a.a.F#e",
"class a.a.a.a.a.a.F#f",
"class a.a.a.a.a.a.G#a",
"class a.a.a.a.a.a.G#b",
"class a.a.a.a.a.a.G#c",
"class a.a.a.a.a.a.G#d",
"class a.a.a.a.a.a.C#d",
"class a.a.a.a.a.a.C#e",
"class a.a.a.a.a.a.C#f"
]
},
"junit-ignored": []
}
} |
Thanks a lot! I see we have 2 issues here (could be related though):
Is it fladle? 🤔 |
No, we wrote our own It really looks like it just took 50 first testcase for some reasons. All testcase in It doesn't happen with multiple shards, e.g. if there are 4 matrix each contains N<50 number of tests, than |
Hey, good news I found what the problem is. fun listTestCases(toolResultsStep: ToolResultsStep): ListTestCasesResponse {
return service
.projects()
.histories()
.executions()
.steps()
.testCases()
.list(
toolResultsStep.projectId,
toolResultsStep.historyId,
toolResultsStep.executionId,
toolResultsStep.stepId
).executeWithRetry()
} Basically, this code executes an API request which only returns |
Here is the patch with a fix. #1634_-_Fixed_issue_when_JUnitReport_xml_only_contained_50_test_results.patch.zip |
Awesome! PRs are always welcome 😸 One puzzle is done, we need to find out why shading is not working in your case 🤔 |
I will try to send PR tomorrow, it has to be from the forked repo right?
I think it just hit the limit, we have over 100 modules and 800 android tests |
Yes, please send a PR from a forked repo. Thanks for debugging and fixing the issue. |
Fixes #1634 ## Test Plan > How do we know the code works? Existing tests should not be broken ## Checklist - [x] Documented - [x] Unit tested - [x] Integration tests updated
👋 Thank you for this amazing tool.
Describe the bug
There are 2 issues that are probably related:
max-test-shards: "5"
for some reason it uses only 1 shard, I can't find the reason why.JUnitReport.xml
which is created only contains 50 tests, whilematrix_0/Nexus5-23-en-portrait/test_result_1.xml
has 73 tests.Is there any hard-coded value of the number of tests
JUnitReport.xml
can have?To Reproduce
Run tests via flank with following configuration:
Expected behaviour
max-test-shards: '5'
.JUnitReport.xml
should contain all tests, not just 50.Details (please complete the following information):
No
v20.09.3 (tried v21.02.0 same issue)
Additional context
Exanple of
matrix_0/Nexus5-23-en-portrait/test_result_1.xml
file:Example of
JUnitReport.xml
file:The text was updated successfully, but these errors were encountered: