Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,9 +1,35 @@
# Microsoft.Testing
# Microsoft.Testing.Extensions.AzureDevOpsReport

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.AzureDevOpsReport is an extension for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) that reports individual test failures as errors or warnings in Azure DevOps CI builds, with file/line annotations when available.
Copy link
Member

Choose a reason for hiding this comment

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

@nohwnd Does it work only when hosted on GitHub? Or is it a generic AzDO syntax that's handled everywhere?


Documentation can be found at <https://aka.ms/testingplatform>.
Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.AzureDevOpsReport` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.AzureDevOpsReport
```

## About

This package extends Microsoft Testing Platform to provide Azure DevOps reporting.
This package extends Microsoft.Testing.Platform with:

- **Azure DevOps reporting**: emits individual CI errors/warnings for each test failure via the Azure DevOps logging commands
- **Configurable severity**: supports `--report-azdo-severity` (`error` or `warning`)
- **CI auto-detection**: detects Azure DevOps environments through the `TF_BUILD` variable

Enable Azure DevOps reporting with the `--report-azdo` command line option.

## Related packages

- [Microsoft.Testing.Extensions.TrxReport](https://www.nuget.org/packages/Microsoft.Testing.Extensions.TrxReport): TRX report generation for standardized test result files

## Documentation

For this extension, see <https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-extensions-test-reports#azure-devops-reports>.

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
33 changes: 33 additions & 0 deletions src/Platform/Microsoft.Testing.Extensions.AzureFoundry/PACKAGE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Microsoft.Testing.Extensions.AzureFoundry

Microsoft.Testing.Extensions.AzureFoundry is an AI provider extension for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) that integrates with Azure AI Foundry (Azure OpenAI) to enable AI-powered testing capabilities.

Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.AzureFoundry` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.AzureFoundry
```

## About

This package extends Microsoft.Testing.Platform with:

- **Azure AI Foundry integration**: provides an `IChatClientProvider` implementation backed by Azure OpenAI
- **Provider implementation**: supplies chat client capabilities to extensions using `Microsoft.Testing.Platform.AI`
- **Environment-based configuration**: reads Azure OpenAI settings from environment variables

This package is a reference implementation of the [Microsoft.Testing.Platform.AI](https://www.nuget.org/packages/Microsoft.Testing.Platform.AI) abstractions.

## Related packages

- [Microsoft.Testing.Platform.AI](https://www.nuget.org/packages/Microsoft.Testing.Platform.AI): AI extensibility abstractions for the testing platform

## Documentation

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
35 changes: 31 additions & 4 deletions src/Platform/Microsoft.Testing.Extensions.CrashDump/PACKAGE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,36 @@
# Microsoft.Testing
# Microsoft.Testing.Extensions.CrashDump

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.CrashDump is an extension for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) that captures a crash dump of the test host process when an unhandled exception or crash occurs.

Documentation can be found at <https://aka.ms/testingplatform>.
Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.CrashDump` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.CrashDump
```

## About

This package extends Microsoft Testing Platform to provide a crash dump functionality.
This package extends Microsoft.Testing.Platform with:

- **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`
Copy link
Member

Choose a reason for hiding this comment

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

I think dumps collected on macOS can only be analyzed on macOS as well. Should we note that?

- **Cross-platform**: supported on Windows, Linux, and macOS. Note that dumps collected on macOS can only be analyzed on macOS
- **Runtime behavior**: supported for .NET 6+; on .NET Framework this extension is ignored

Enable crash dump collection via the `--crashdump` command line option.

## Related packages

- [Microsoft.Testing.Extensions.HangDump](https://www.nuget.org/packages/Microsoft.Testing.Extensions.HangDump): captures dumps when the test process hangs

## Documentation

For this extension, see <https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-crash-hang-dumps#crash-dump>.

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
36 changes: 32 additions & 4 deletions src/Platform/Microsoft.Testing.Extensions.HangDump/PACKAGE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,37 @@
# Microsoft.Testing
# Microsoft.Testing.Extensions.HangDump

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.HangDump is an extension for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) that captures a memory dump when the test host process appears to be hung (exceeds a configurable timeout).

Documentation can be found at <https://aka.ms/testingplatform>.
Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.HangDump` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.HangDump
```

## About

This package provides Windows Hang dump extensions to Microsoft Testing Platform.
This package extends Microsoft.Testing.Platform with:

- **Hang detection**: monitors the test host process and detects when it exceeds a configurable timeout without any activity.
- **Dump collection**: captures a memory dump of the hanging process for post-mortem analysis
- **Deadlock investigation**: collected dumps can be analyzed with tools like Visual Studio, WinDbg, or `dotnet-dump` to diagnose deadlocks and other hang causes

The timeout defaults to `30m` and can be configured in values such as `90s`, `5m`, or `1.5h`.

Enable hang dump collection via the `--hangdump` command line option, and configure the timeout with `--hangdump-timeout`.

## Related packages

- [Microsoft.Testing.Extensions.CrashDump](https://www.nuget.org/packages/Microsoft.Testing.Extensions.CrashDump): captures dumps when the test process crashes

## Documentation

For this extension, see <https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-crash-hang-dumps#hang-dump>.

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
30 changes: 26 additions & 4 deletions src/Platform/Microsoft.Testing.Extensions.HotReload/PACKAGE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,31 @@
# Microsoft.Testing
# Microsoft.Testing.Extensions.HotReload

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.HotReload is an extension for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) that enables Hot Reload support, allowing you to apply code changes to your running tests without restarting the test host process.

Documentation can be found at <https://aka.ms/testingplatform>.
Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.HotReload` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.HotReload
```

## About

This package extends Microsoft Testing Platform to provide Hot Reload support.
This package extends Microsoft.Testing.Platform with:

- **Hot Reload integration**: apply code changes to your test project without restarting the test host
- **Faster inner loop**: reduces the time between making a change and seeing the test results
- **Console-mode support**: currently supported in console mode (not in Visual Studio/VS Code Test Explorer)

Enable Hot Reload support by setting `TESTINGPLATFORM_HOTRELOAD_ENABLED=1`.

## Documentation

For this extension, see <https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-hot-reload>.

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
28 changes: 24 additions & 4 deletions src/Platform/Microsoft.Testing.Extensions.OpenTelemetry/PACKAGE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,29 @@
# Microsoft.Testing
# 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 instruments test execution with [OpenTelemetry](https://opentelemetry.io/)-compatible traces and metrics.

Documentation can be found at <https://aka.ms/testingplatform>.
Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.OpenTelemetry` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.OpenTelemetry
```

## About

This package provides Open Telemetry extension to Microsoft Testing Platform.
This package extends Microsoft.Testing.Platform with:

- **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

## Documentation

For this extension, see <https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-open-telemetry>.

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
30 changes: 26 additions & 4 deletions src/Platform/Microsoft.Testing.Extensions.Retry/PACKAGE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,31 @@
# Microsoft.Testing
# Microsoft.Testing.Extensions.Retry

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.Retry is an extension for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) that provides test resilience and transient-fault handling by rerunning failed tests.

Documentation can be found at <https://aka.ms/testingplatform>.
Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.Retry` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.Retry
```

## About

This package extends Microsoft Testing Platform to provide a retry policy system that allows to restart tests on failure.
This package extends Microsoft.Testing.Platform with:

- **Automatic retry**: automatically re-runs failed tests up to a configurable number of times
- **Retry guards**: can stop retries when failure thresholds are exceeded (`--retry-failed-tests-max-percentage`, `--retry-failed-tests-max-tests`)
- **Integration-test focus**: intended for scenarios where transient environment issues can cause intermittent failures

Configure retry using `--retry-failed-tests <retries>`, and optionally limit retries with `--retry-failed-tests-max-percentage` or `--retry-failed-tests-max-tests`.

## Documentation

For this extension, see <https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-retry>.

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
30 changes: 26 additions & 4 deletions src/Platform/Microsoft.Testing.Extensions.Telemetry/PACKAGE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,31 @@
# Microsoft.Testing
# Microsoft.Testing.Extensions.Telemetry

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.Telemetry is an extension for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) that collects usage telemetry to help the Microsoft.Testing.Platform team improve the product.

Documentation can be found at <https://aka.ms/testingplatform>.
Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.Telemetry` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.Telemetry
```

## About

This package provides telemetry extensions to Microsoft Testing Platform.
This package extends Microsoft.Testing.Platform with:

- **Usage telemetry**: collects usage data to help understand product usage and prioritize improvements
- **Opt-out support**: telemetry can be disabled via the `TESTINGPLATFORM_TELEMETRY_OPTOUT` or `DOTNET_CLI_TELEMETRY_OPTOUT` environment variables
- **Disclosure**: telemetry information is shown on first run, with opt-out guidance

This package is an optional, opt-in extension. To enable telemetry when using Microsoft.Testing.Platform (including when running tests with [MSTest](https://www.nuget.org/packages/MSTest)), you must explicitly reference the `Microsoft.Testing.Extensions.Telemetry` package from your test project or from your own test framework or tooling package.

## Documentation

For this extension, see <https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-telemetry>.

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
Original file line number Diff line number Diff line change
@@ -1,11 +1,36 @@
# Microsoft.Testing
# Microsoft.Testing.Extensions.TrxReport.Abstractions

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.TrxReport.Abstractions provides the interfaces and data objects for extensions that need to interoperate with TRX report functionality in [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform).

Documentation can be found at <https://aka.ms/testingplatform>.
Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.TrxReport.Abstractions` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.TrxReport.Abstractions
```

## About

This package provides interfaces and data objects used by extensions willing to interoperate with TRX functionality.
This package provides:

- **TRX abstractions**: interfaces and data types for extensions that need to contribute to or consume TRX report data
- **Extensibility**: allows third-party extensions to enrich TRX reports with additional information

> **Note**: This package provides only the abstractions. To generate TRX reports, install [Microsoft.Testing.Extensions.TrxReport](https://www.nuget.org/packages/Microsoft.Testing.Extensions.TrxReport).
>
> For most test projects, you should install `Microsoft.Testing.Extensions.TrxReport` instead of referencing this package directly.

## Related packages

- [Microsoft.Testing.Extensions.TrxReport](https://www.nuget.org/packages/Microsoft.Testing.Extensions.TrxReport): TRX report generation extension

## Documentation

For this extension, see <https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-extensions-test-reports>.

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

This package does not bring support for telemetry, for this you would need to install Microsoft.Testing.Extensions.TrxReport package.
Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
35 changes: 31 additions & 4 deletions src/Platform/Microsoft.Testing.Extensions.TrxReport/PACKAGE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,36 @@
# Microsoft.Testing
# Microsoft.Testing.Extensions.TrxReport

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.TrxReport is an extension for [Microsoft.Testing.Platform](https://www.nuget.org/packages/Microsoft.Testing.Platform) that generates TRX (Visual Studio Test Results) report files.

Documentation can be found at <https://aka.ms/testingplatform>.
Microsoft.Testing.Platform is open source. You can find `Microsoft.Testing.Extensions.TrxReport` code in the [microsoft/testfx](https://github.com/microsoft/testfx) GitHub repository.

## Install the package

```dotnetcli
dotnet add package Microsoft.Testing.Extensions.TrxReport
```

## About

This package extends Microsoft Testing Platform to provide TRX test reports.
This package extends Microsoft.Testing.Platform with:

- **TRX report generation**: produces `.trx` report files compatible with Visual Studio and Azure DevOps
- **Standardized format**: TRX is a widely supported XML-based test results format
- **CI integration**: TRX files can be published to Azure DevOps, GitHub Actions and other CI systems for rich test result visualization

Enable TRX report generation via the `--report-trx` command line option.

## Related packages

- [Microsoft.Testing.Extensions.TrxReport.Abstractions](https://www.nuget.org/packages/Microsoft.Testing.Extensions.TrxReport.Abstractions): interfaces for extensions interoperating with TRX reports
- [Microsoft.Testing.Extensions.AzureDevOpsReport](https://www.nuget.org/packages/Microsoft.Testing.Extensions.AzureDevOpsReport): Azure DevOps CI error/warning reporting for test failures

## Documentation

For this extension, see <https://learn.microsoft.com/dotnet/core/testing/microsoft-testing-platform-extensions-test-reports#visual-studio-test-reports-trx>.

For comprehensive documentation, see <https://aka.ms/testingplatform>.

## Feedback & contributing

Microsoft.Testing.Platform is an open source project. Provide feedback or report issues in the [microsoft/testfx](https://github.com/microsoft/testfx/issues) GitHub repository.
Loading