Optimize DotnetSDKSimulation_PostProcessing test (163s → 61s) by nohwnd · Pull Request #15516 · microsoft/vstest (original) (raw)
Navigation Menu
Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Appearance settings
Conversation
Summary
Optimizes the slowest acceptance test from 163s → 61s (63% faster).
Changes
- Build once, reuse: Instead of creating and building 5 separate MSTest projects in parallel (5× \dotnet new\ + 5× \dotnet build), create and build one project once and reuse the DLL.
- Reduce runs from 5 to 2: The test validates artifact post-processing/merging — 2 runs is the minimum needed to verify merge behavior.
Before/After
| Metric | Before | After |
|---|---|---|
| Duration | 163.4s | 61.1s |
| \dotnet new\ calls | 5 | 1 |
| \dotnet build\ calls | 5 | 1 |
| vstest runs | 5 | 2 |
- Build one MSTest project once instead of 5 in parallel
- Reduce parallel vstest runs from 5 to 2 (minimum for merge verification)
- Test validates artifact post-processing/merging, not project creation
Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
Copilot AI review requested due to automatic review settings
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Optimizes the DotnetSDKSimulation_PostProcessing acceptance test runtime by reducing redundant project creation/build work and lowering the number of vstest executions while preserving merge validation.
Changes:
- Create/build a single MSTest project once and reuse its output DLL instead of generating/building multiple projects.
- Reduce parallel vstest runs from 5 to 2 and update the assertion accordingly.
- Use per-run results directories to avoid output collisions during parallel executions.
This was referenced
May 26, 2026
This was referenced
Jun 16, 2026
This file contains hidden or 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
[ Show hidden characters]({{ revealButtonHref }})