feat(CLI): --maxRelatedTestsDepth flag to control the depth of related test in --findRelatedTests #15495
+118
−5
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.
Summary
The company that I work for, has a test suite which is very slow to run. This is because of poorly structured code and long dependency trees. The developer time which is wasted as developers are waiting is approximately $200,000-$300,000 per year and often times, developers end up committing the code without testing it due to how long it takes. I have asked around and seen that this is often a problem that companies have and so know that many would appreciate the time savings that this would provide.
This PR adds the optional
--maxRelatedTestsDepth
flag to the cli so that, when running jest with --findRelatedTests, the user has the ability to limit the depth of the BFS that is occurring. This is so that, for the local tests, we can limit testing to only the nearby files and stop testing once the dependency tree is deep enough that we are confident it no longer is related.Test plan
See findRelatedFiles.test.ts to see the tests that were created to validate that this code works as intended.
Path: e2e/tests/findRelatedFiles.test.ts