Skip to content

Parallelize NetAnalyzers unit tests - #56028

Draft
Evangelink wants to merge 1 commit into
mainfrom
dev/amauryleve/parallelize-netanalyzers-tests
Draft

Parallelize NetAnalyzers unit tests#56028
Evangelink wants to merge 1 commit into
mainfrom
dev/amauryleve/parallelize-netanalyzers-tests

Conversation

@Evangelink

Copy link
Copy Markdown
Member

Summary

This is the independent net-analyzers replacement slice of #56015.

  • Enable MSTest MethodLevel parallelization for the NetAnalyzers unit-test assembly.
  • Document the concurrency requirement in the area-owned src/Microsoft.CodeAnalysis.NetAnalyzers/AGENTS.md guidance.

Ownership

@dotnet/dotnet-analyzers owns this NetAnalyzers test area, with agent and contributor guidance maintained in src/Microsoft.CodeAnalysis.NetAnalyzers/AGENTS.md.

Isolation rationale

Each test creates a self-contained Roslyn compilation through a fresh verifier instance. The assembly has no assembly-, class-, or test-initialization fixtures, and its shared state is limited to init-once immutable metadata references and dynamic-data providers. ReferenceAssemblies.ResolveAsync protects the shared package cache with its cross-process semaphore.

The added AGENTS guidance requires future fixtures, data sources, process-global state, and filesystem paths to remain safe for concurrent test methods.

Validation status

This branch contains only the exact two-file net-analyzers slice from source snapshot 84e283b69ce8f087114b5adba1016c8ce1f0e5d0, based on 198ec8f3f13efc148f464688a6523341f856e03c. Tests were not run for this split-only draft. Separate NetAnalyzers performance measurement remains pending.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).
1 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant