Skip to content

Reduce specific test executions times #48405

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

Open
wants to merge 3 commits into
base: release/9.0.1xx
Choose a base branch
from

Conversation

marcpopMSFT
Copy link
Member

I have a PR that splits tests by individual test rather than test class to help identify the slowest tests. There were two test work items that ran significantly longer than all others at 28m and 22m (next closest was 15m). Running the tests I identified some optimizations to make in the nuget tests and reduced matrix for the illink tests.

#44898 (comment)

For the nuget tests, I did two things:

  1. Parallelized the test as it was taking five seconds for each iteration through but looping 10+ times.
  2. I removed some of the downlevel instances of these tests as the cleanest way to save time

For the ILLink tests, I just took any test that took over 50s and made it target net8+ since the others are no longer in support.

Reduce the number of entries to reduce the runtime as these two tests were at 10 minutes and 3 minutes respectively
…ts were going over 1 minute. Because of how we split up tests, even a few longer tests with a lots of params can extend a test leg.
@marcpopMSFT marcpopMSFT requested a review from Forgind April 30, 2025 21:44
@@ -96,7 +96,7 @@ public void ILLink_runs_and_creates_linked_app(string targetFramework, bool refe
}

[RequiresMSBuildVersionTheory("17.0.0.32901")]
[MemberData(nameof(SupportedTfms), MemberType = typeof(PublishTestUtils))]
[MemberData(nameof(Net8Plus), MemberType = typeof(PublishTestUtils))]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe just remove the unsupported TFMs from SupportedTfms?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@agocke I interpreted "SupprotedTfms" as being supported for the feature, not in support as it goes back to netcoreapp3.1 and has been for a while. These are your tests so happy to change what supported means here to be the same as net8plus for the moment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants