GitHubActionsTestLogger 1.4.1

.NET Standard 2.0 .NET Framework 4.5.1
Install-Package GitHubActionsTestLogger -Version 1.4.1
dotnet add package GitHubActionsTestLogger --version 1.4.1
<PackageReference Include="GitHubActionsTestLogger" Version="1.4.1">
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add GitHubActionsTestLogger --version 1.4.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: GitHubActionsTestLogger, 1.4.1"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install GitHubActionsTestLogger as a Cake Addin
#addin nuget:?package=GitHubActionsTestLogger&version=1.4.1

// Install GitHubActionsTestLogger as a Cake Tool
#tool nuget:?package=GitHubActionsTestLogger&version=1.4.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

GitHub Actions Test Logger

Made in Ukraine Build Coverage Version Downloads Discord Donate Fuck Russia

🟒 Project status: active<sup>[?]</sup>

Custom logger for dotnet test that reports test results in a structured format that GitHub Actions understands. When using this logger, failed tests are listed in job annotations, job summary, and highlighted in code diffs.

⚠ Job summary is a new GitHub feature which is still in early preview. If your account or organization doesn't have access to this feature, job summaries will not be available.

Terms of use

By using this project or its source code, for any purpose and in any shape or form, you grant your implicit agreement to all the following statements:

  • You condemn Russia and its military aggression against Ukraine
  • You recognize that Russia is an occupant that unlawfully invaded a sovereign state
  • You support Ukraine's territorial integrity, including its claims over temporarily occupied territories of Crimea and Donbas
  • You reject false narratives perpetuated by Russian state propaganda

To learn more about the war and how you can help, click here. Glory to Ukraine! πŸ‡ΊπŸ‡¦


  • πŸ“¦ NuGet: dotnet add package GitHubActionsTestLogger


diff summary



To use GitHub Actions Test Logger, follow these steps:

  1. Install GitHubActionsTestLogger package in your test project
  2. Install Microsoft.NET.Test.Sdk package in your test project (or update to latest)
  3. Modify your GitHub Actions workflow file by adding --logger GitHubActions to dotnet test:
name: CI
on: [push, pull_request]

    runs-on: ubuntu-latest

      - name: Checkout
        uses: actions/checkout@v2.3.3

      - name: Install .NET
        uses: actions/setup-dotnet@v1.7.2
          dotnet-version: 5.0.x

      - name: Build & test
        run: dotnet test --configuration Release --logger GitHubActions

⚠️ Ensure that your test project references Microsoft.NET.Test.Sdk version 16.8.0 or higher. Older versions of this package may not work properly with custom test loggers.

⚠️ If you are using .NET SDK v2.2 or lower, you need to enable <CopyLocalLockFileAssemblies> property in your test project.


GitHub Actions Test Logger has a few options that you can override to customize its behavior. In order to pass an option to the logger, include it as an additional parameter inside --logger:

dotnet test --logger "GitHubActions;option1=foo;option2=bar"

Specifies the format used when logging test results to the console.

The following replacement tokens are available:

  • $test β€” replaced with the display name of the test
  • $outcome β€” replaced with the error message (in case of an exception) or the outcome of the test
  • $traits.TRAIT_NAME β€” replaced with the value of a trait named TRAIT_NAME

Default: $test: $outcome.


  • $test: $outcome β†’ MyTests.Test1: AssertionException: Expected 'true' but found 'false'
  • [$traits.Category] $test: $outcome β†’ [UI Tests] MyTests.Test1: AssertionException: Expected 'true' but found 'false'

Specifies whether to additionally report warnings for tests that have neither failed nor succeeded (i.e. skipped or inconclusive). If disabled, only failed tests will be reported.

Can be set to either true or false.

Default: true.

Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows
.NET Core netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
.NET Standard netstandard2.0 netstandard2.1
.NET Framework net451 net452 net46 net461 net462 net463 net47 net471 net472 net48
MonoAndroid monoandroid
MonoMac monomac
MonoTouch monotouch
Tizen tizen40 tizen60
Xamarin.iOS xamarinios
Xamarin.Mac xamarinmac
Xamarin.TVOS xamarintvos
Xamarin.WatchOS xamarinwatchos
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories (44)

Showing the top 5 popular GitHub repositories that depend on GitHubActionsTestLogger:

Repository Stars
Dapper - a simple object mapper for .Net
General purpose redis client
The stream database optimised for event sourcing
:angel: The ultimate angle brackets parser library parsing HTML5, MathML, SVG and CSS to construct a DOM based on the official W3C specifications.
Exports Discord chat logs to a file
Version Downloads Last updated
1.4.1 30,394 4/19/2022
1.4.0 438 4/18/2022
1.3.0 71,024 2/21/2022
1.2.0 423,169 2/22/2021
1.1.2 76,329 10/26/2020
1.1.1 9,155 10/1/2020
1.1.0 122,934 4/27/2020
1.0.0 7,263 3/23/2020
0.0.1 842 3/22/2020