Allure.NUnit 2.15.0

Prefix Reserved
dotnet add package Allure.NUnit --version 2.15.0
                    
NuGet\Install-Package Allure.NUnit -Version 2.15.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Allure.NUnit" Version="2.15.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Allure.NUnit" Version="2.15.0" />
                    
Directory.Packages.props
<PackageReference Include="Allure.NUnit" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Allure.NUnit --version 2.15.0
                    
#r "nuget: Allure.NUnit, 2.15.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Allure.NUnit@2.15.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Allure.NUnit&version=2.15.0
                    
Install as a Cake Addin
#tool nuget:?package=Allure.NUnit&version=2.15.0
                    
Install as a Cake Tool

Allure NUnit adapter

Nuget release Nuget downloads

An Allure adapter for NUnit.


Quick start

  • Install the Allure.NUnit package.
  • Configure it via allureConfig.json.
  • Apply the [Allure.NUnit.AllureNUnit] attribute to test fixtures.
  • Use other attributes from Allure.NUnit.Attributes if needed.
  • Use the functions from Allure.Net.Commons.AllureApi if needed.

Further readings

Learn more from the documentation for Allure NUnit.

Some examples are available here.

Notes

New in 2.15.0: the common Attribute API

Use the attributes in Allure.Net.Commons.Attributes instead of Allure.NUnit.Attributes. Read more details here.

In most cases, the migration is as simple as swapping the using directive:

- using Allure.NUnit.Attributes;
+ using Allure.Net.Commons.Attributes;
using Allure.NUnit;
using NUnit.Framework;

[AllureFeature("My feature")]
class MyTestClass
{
    [AllureStory("My story")]
    [Test]
    public void MyTestMethod()
    {

    }
}

In some cases, the usage must be updated. They are listed below.

[AllureDescription]

Set Append to keep the concatenation behavior:

- using Allure.NUnit.Attributes;
+ using Allure.Net.Commons.Attributes;
using NUnit.Framework;

-[AllureDescription("First description")]
+[AllureDescription("First description", Append = true)]
class MyTestClass
{
-    [AllureDescription("Second description")]
+    [AllureDescription("Second description", Append = true)]
    [Test]
    public void MyTestMethod()
    {

    }
}

Use [AllureDescriptionHtml] instead of setting Html:

- using Allure.NUnit.Attributes;
+ using Allure.Net.Commons.Attributes;
using NUnit.Framework;

class MyTestClass
{
-    [AllureDescription("<p>Html text</p>", Html = true)]
+    [AllureDescriptionHtml("<p>Html text</p>")]
    [Test]
    public void MyTestMethod()
    {
    }
}
[AllureFeature], [AllureStory] with multiple values

Use multiple [AllureFeature] or [AllureStory] attributes instead:

- using Allure.NUnit.Attributes;
+ using Allure.Net.Commons.Attributes;

-[AllureFeature("Feature 1", "Feature 2")]
+[AllureFeature("Feature 1")]
+[AllureFeature("Feature 2")]
-[AllureStory("Story 1", "Story 2")]
+[AllureStory("Story 1")]
+[AllureStory("Story 2")]
class MyTestClass
{
}

Pass the URL or ID as the only positional argument. Use the Title property to pass the display text. Also, use [AllureTmsItem] instead of [AllureTms]:

- using Allure.NUnit.Attributes;
+ using Allure.Net.Commons.Attributes;

-[AllureLink("Homepage", "https://allurereport.org")]
+[AllureLink("https://allurereport.org", Title = "Homepage")]
-[AllureIssue("ISSUE-123", "123")]
+[AllureIssue("123", Title = "ISSUE-123")]
-[AllureTms("TMS-345", "345")]
+[AllureTmsItem("345", Title = "TMS-345")]
class MyTestClass
{
}
[AllureSeverity]

Always pass an explicit value as the argument:

- using Allure.NUnit.Attributes;
+ using Allure.Net.Commons.Attributes;

-[AllureSeverity]
+[AllureSeverity(SeverityLevel.normal)]
class MyTestClass
{
}
[Name] and [Skip]

Use [AllureParameter] with Name and Ignore correspondingly:

- using Allure.NUnit.Attributes;
+ using Allure.Net.Commons.Attributes;

class MyTestClass
{
    [AllureStep]
    public void MyStepMethod(
-        [Name("Foo")] int parameter1,
+        [AllureParameter(Name = "Foo")] int parameter1,
-        [Skip] int parameter2
+        [AllureParameter(Ignore = true)] int parameter2
    )
    {
    }
}
Deprecation notice

Attributes from the Allure.NUnit.Attributes namespace will be deprecated in one of the future releases. Please, migrate to Allure.Net.Commons.Attributes.

New in 2.12.0: Namespace changed to Allure.NUnit

Starting from 2.12.0, the namespace NUnit.Allure is deprecated. The API in that namespace still works, but it will be removed in the future. Please use Allure.NUnit instead.

The [NUnit.Allure.Core.AllureNUnit] attribute should be replaced with [Allure.NUnit.AllureNUnit]:

using Allure.NUnit; // <- Note the namespace
using NUnit.Framework;

[AllureNUnit]
class MyTests
{
    [Test]
    public void TestMethod()
    {
        /* ... */
    }
}

Deprecations and removals in 2.12.0

The following user API methods are now deprecated:

  • In NUnit.Allure.Core.AllureExtensions:
    • All overloads of WrapInStep - use Allure.Net.Commons.AllureApi.Step instead.
    • WrapSetUpTearDownParams - had no effect; can safely be replaced with the direct call of the provided delegate.
  • NUnit.Allure.Core.AllureNUnitAttribute - use Allure.NUnit.AllureNUnitAttribute instead.
  • Other classes and methods in NUnit.Allure - change the namespace to Allure.NUnit.

The following previously deprecated user API classes and methods were removed:

  • In NUnit.Allure.Core.AllureExtensions:
    • AddScreenDiff - use Allure.Net.Commons.AllureApi.AddScreenDiff instead.
  • NUnit.Allure.Core.AllureNUnitAttribute's constructor overload that takes bool wrapIntoStep - the wrapIntoStep parameter had no effect and can be safely removed now.
  • In NUnit.Allure.Core.AllureNUnitHelper:
    • WrapInStep - use Allure.Net.Commons.AllureApi.Step instead.
  • NUnit.Allure.Core.StepsHelper - use functions from Allure.Net.Commons.AllureApi and Allure.Net.Commons.ExtendedApi instead.
  • In Allure.Net.Commons.AllureLifecycle:
    • AddAttachment - use Allure.Net.Commons.AllureApi.AddAttachment instead.
    • AddScreenDiff - use Allure.Net.Commons.AllureApi.AddScreenDiff instead.
  • Allure.Net.Commons.Steps.CoreStepsHelper - use functions from Allure.Net.Commons.AllureApi and Allure.Net.Commons.ExtendedApi instead.

For users of Mac with Apple silicon

If you're developing on a Mac machine with Apple silicon, make sure you have Rosetta installed. Follow this article for the instructions: https://support.apple.com/en-us/HT211861

You may also install Rosetta via the CLI:

/usr/sbin/softwareupdate --install-rosetta --agree-to-license
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (7)

Showing the top 5 NuGet packages that depend on Allure.NUnit:

Package Downloads
Dosaic.Testing.NUnit

A plugin-first dotnet framework for rapidly building anything hosted in the web.

PiBox.Testing

PiBox is a `service hosting framework` that allows `.net devs` to `decorate their services with behaviours or functionality (think of plugins) while only using minimal configuration`.

OldRepublic.PlaywrightBase

Reusable Playwright automation framework.

Verisoft.TestInfrastructure

Verisoft C# test automation infrastructure providing NUnit lifecycle hooks and Appium WebDriver integration

MSDynamicsTestAutomation.Core

Core testing framework utilities and Playwright extensions for ENVU test automation projects. Includes Allure reporting, artifact management, Excel test data tracking, and comprehensive extension methods for Click, Fill, Locator operations.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Allure.NUnit:

Repository Stars
microsoft/garnet
Garnet is a remote cache-store from Microsoft Research that offers strong performance (throughput and latency), scalability, storage, recovery, cluster sharding, key migration, and replication features. Garnet can work with existing Redis clients.
Version Downloads Last Updated
2.15.0 12,956 4/28/2026
2.14.1 477,334 10/21/2025
2.14.0 32,953 10/16/2025
2.13.0 3,912 10/9/2025
2.12.1 1,292,639 6/4/2024
2.12.0 166,018 4/2/2024
2.11.0 198,431 11/29/2023
2.10.0 99,190 10/16/2023
2.10.0-preview.1 7,744 9/22/2023
2.9.5-preview.1 180,147 3/22/2023
2.9.4-preview.6 53,791 2/13/2023
2.9.4-preview.2 20,134 1/2/2023
2.9.4-preview.1 298 12/30/2022
2.9.3-preview.1 11,763 12/23/2022
2.9.2-preview.1 14,012 9/19/2022
2.9.1-preview.7-nunit-fixtures 1,985 8/2/2022
2.9.1-preview.6-nunit-fixtures 283 7/27/2022
Loading failed