Rework NuGet PACKAGE.md for Microsoft.Testing.Platform and extensions#7450
Rework NuGet PACKAGE.md for Microsoft.Testing.Platform and extensions#7450Evangelink wants to merge 5 commits intomainfrom
Conversation
Rework all NuGet README files (PACKAGE.md) for Microsoft.Testing.Platform and its extensions with a unified, detailed style: - Use the actual package name as the title instead of generic 'Microsoft.Testing' - Add a descriptive introduction paragraph with a NuGet link to Microsoft.Testing.Platform - Add 'Install the package' section with dotnet CLI command - Add detailed 'About' section with key features as bullet points - Add 'Related packages' cross-references for closely related extensions (diagnostics: CrashDump/HangDump, reporting: TrxReport/TrxReport.Abstractions/AzureDevOpsReport, AI: Platform.AI/AzureFoundry) - Add 'Documentation' and 'Feedback & contributing' sections with links - Add missing PACKAGE.md for Microsoft.Testing.Platform.AI and Microsoft.Testing.Extensions.AzureFoundry - Clarify VSTestBridge is a test framework author extension, not for end-user projects - Clarify OpenTelemetry extension sends data only to user-configured endpoints, not to Microsoft
There was a problem hiding this comment.
Pull request overview
This PR reworks all NuGet README files (PACKAGE.md) for Microsoft.Testing.Platform and its extensions with a unified, detailed, and professional documentation style. The updates replace generic documentation with package-specific information that helps developers understand what each package does, when to use it, and how it relates to other packages in the ecosystem.
Changes:
- Standardized structure across all PACKAGE.md files with actual package names as titles, detailed About sections, installation instructions, and cross-references
- Added two new PACKAGE.md files for Microsoft.Testing.Platform.AI and Microsoft.Testing.Extensions.AzureFoundry
- Clarified that VSTestBridge is for test framework authors, not end-users, and that OpenTelemetry sends data only to user-configured endpoints
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/Platform/Microsoft.Testing.Platform/PACKAGE.md | Updated core platform documentation with detailed description of test host, extensibility model, and protocol |
| src/Platform/Microsoft.Testing.Platform.MSBuild/PACKAGE.md | Enhanced MSBuild integration documentation with details on dotnet test support and configuration file generation |
| src/Platform/Microsoft.Testing.Platform.AI/PACKAGE.md | New file documenting AI extensibility abstractions and IChatClientProvider interface |
| src/Platform/Microsoft.Testing.Extensions.VSTestBridge/PACKAGE.md | Clarified target audience (test framework authors) and compatibility bridge functionality |
| src/Platform/Microsoft.Testing.Extensions.TrxReport/PACKAGE.md | Enhanced TRX report documentation with CI integration details and related packages |
| src/Platform/Microsoft.Testing.Extensions.TrxReport.Abstractions/PACKAGE.md | Updated abstractions documentation with clarity on extensibility for third-party extensions |
| src/Platform/Microsoft.Testing.Extensions.Telemetry/PACKAGE.md | Added details on opt-out support and privacy-first approach |
| src/Platform/Microsoft.Testing.Extensions.Retry/PACKAGE.md | Enhanced retry extension documentation with flaky test management details |
| src/Platform/Microsoft.Testing.Extensions.OpenTelemetry/PACKAGE.md | Clarified that data is sent only to user-configured endpoints, not to Microsoft |
| src/Platform/Microsoft.Testing.Extensions.HotReload/PACKAGE.md | Updated Hot Reload documentation with IDE integration details |
| src/Platform/Microsoft.Testing.Extensions.HangDump/PACKAGE.md | Enhanced hang dump documentation with cross-reference to CrashDump package |
| src/Platform/Microsoft.Testing.Extensions.CrashDump/PACKAGE.md | Updated crash dump documentation with cross-reference to HangDump package |
| src/Platform/Microsoft.Testing.Extensions.AzureFoundry/PACKAGE.md | New file documenting Azure AI Foundry integration for AI-powered testing |
| src/Platform/Microsoft.Testing.Extensions.AzureDevOpsReport/PACKAGE.md | Enhanced Azure DevOps reporting documentation with pipeline integration details |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 14 out of 14 changed files in this pull request and generated 2 comments.
Comments suppressed due to low confidence (1)
src/Platform/Microsoft.Testing.Extensions.OpenTelemetry/PACKAGE.md:20
- The README describes this package as an "OpenTelemetry exporter" that exports via OTLP, but the implementation only creates TracerProvider/MeterProvider builders and does not configure any exporters by default. This is misleading for consumers: please reword to clarify that this package enables OpenTelemetry tracing/metrics and that users must configure an exporter (e.g., OTLP) via the provided configuration delegates for telemetry to be emitted.
- **OpenTelemetry exporter**: exports test execution data (traces, metrics) using the OpenTelemetry protocol (OTLP)
- **Observability**: integrate test execution data into your existing observability stack (e.g. Jaeger, Prometheus, Grafana)
- **Standards-based**: leverages the OpenTelemetry .NET SDK for broad compatibility with telemetry backends
- **Your data, your infrastructure**: telemetry data is sent exclusively to the OTLP endpoint you configure — no data is sent to Microsoft
| # Microsoft.Testing.Extensions.OpenTelemetry | ||
|
|
||
| Microsoft Testing is a set of platform, framework and protocol intended to make it possible to run any test on any target or device. | ||
| Microsoft.Testing.Extensions.OpenTelemetry is an extension for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) that exports test telemetry data using the [OpenTelemetry](https://opentelemetry.io/) standard. |
There was a problem hiding this comment.
The intro states this package "exports test telemetry data". In the current implementation, installing it only wires up OpenTelemetry providers; without configuring exporters, no telemetry is actually exported. Consider rephrasing to avoid implying that telemetry export happens automatically.
This issue also appears on line 17 of the same file.
|
|
||
| - **Real-time test reporting**: reports individual test results to Azure DevOps as they complete | ||
| - **Pipeline integration**: automatically detects Azure DevOps Pipelines environments | ||
| - **Test run summaries**: provides rich test result summaries visible in the Azure DevOps Pipeline UI |
There was a problem hiding this comment.
This doesn't sound correct. We only report individual failures. There is no summary.
| # Microsoft.Testing.Platform.MSBuild | ||
|
|
||
| Microsoft Testing is a set of platform, framework and protocol intended to make it possible to run any test on any target or device. | ||
| Microsoft.Testing.Platform.MSBuild provides the MSBuild integration for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform). It enables `dotnet test`, Visual Studio Test Explorer and CI pipelines to discover and run tests built with Microsoft.Testing.Platform. |
There was a problem hiding this comment.
I don't think it has anything to do with Test Explorer. The package today provides the following features:
- MTP support using the old VSTest-based
dotnet test(the experience that requires the additional--), which we don't care about that much today, and is only for .NET 8/9 SDKs. - testconfig.json copying
- Entry-point generation
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Youssef Victor <youssefvictor00@gmail.com>
| - **OpenTelemetry exporter**: exports test execution data (traces, metrics) using the OpenTelemetry protocol (OTLP) | ||
| - **Observability**: integrate test execution data into your existing observability stack (e.g. Jaeger, Prometheus, Grafana) | ||
| - **Standards-based**: leverages the OpenTelemetry .NET SDK for broad compatibility with telemetry backends |
There was a problem hiding this comment.
The README currently describes this package as an "OpenTelemetry exporter" that exports traces/metrics via OTLP. In the implementation, the provider just builds TracerProvider/MeterProvider and does not configure any exporters by default (export only happens if the consumer configures exporters via the provided delegates). Please reword the bullets to avoid implying automatic OTLP export, and clarify that data is only sent to user-configured exporters/endpoints.
| - **OpenTelemetry exporter**: exports test execution data (traces, metrics) using the OpenTelemetry protocol (OTLP) | |
| - **Observability**: integrate test execution data into your existing observability stack (e.g. Jaeger, Prometheus, Grafana) | |
| - **Standards-based**: leverages the OpenTelemetry .NET SDK for broad compatibility with telemetry backends | |
| - **OpenTelemetry integration**: instruments test execution and produces OpenTelemetry-compatible traces and metrics that can be exported by user-configured exporters (for example, OTLP exporters) | |
| - **Observability**: enables you to route test execution data, via your own OpenTelemetry exporter configuration, into observability backends (e.g. Jaeger, Prometheus, Grafana) | |
| - **Standards-based**: leverages the OpenTelemetry .NET SDK so that data is sent only to the telemetry exporters and endpoints that you configure |
|
|
||
| - **Crash dump collection**: automatically captures a memory dump when the test process crashes | ||
| - **Post-mortem debugging**: collected dumps can be analyzed with tools like Visual Studio, WinDbg, or `dotnet-dump` | ||
| - **Runtime behavior**: supported for .NET 6+; on .NET Framework this extension is ignored |
There was a problem hiding this comment.
The README says the crash dump extension is "supported for .NET 6+" and "ignored" on .NET Framework. The code path is gated on NETCOREAPP (not specifically .NET 6+), and on non-NETCOREAPP it can fail validation unless the caller disables it (e.g., via ignoreIfNotSupported). Please adjust this statement to match the actual support/behavior on .NET Framework vs .NET (NETCOREAPP).
| - **Runtime behavior**: supported for .NET 6+; on .NET Framework this extension is ignored | |
| - **Runtime behavior**: supported on .NET (NETCOREAPP) targets; on non-NETCOREAPP targets such as .NET Framework, this extension is not supported and may fail validation unless configured to be ignored (for example, via `ignoreIfNotSupported`) |
Rework all NuGet README files (PACKAGE.md) for Microsoft.Testing.Platform and its extensions with a unified, detailed style: