/allure-nunit

Allure adapter for NUnit3 framework.

Primary LanguageC#MIT LicenseMIT

Allure NUnit adapter

NUnit adapter for Allure Framework

Build statusNuGetSteps

Allure report:

Allure report

Code example:

[TestFixture(Author = "unickq", Description = "Examples")]
[AllureNUnit]
[AllureLink("https://github.com/unickq/allure-nunit")]
public class Tests
{
    [OneTimeSetUp]
    public void ClearResultsDir()
    {
        AllureLifecycle.Instance.CleanupResultDirectory();
    }

    //Allure.Steps required
    [AllureStep("This method is just saying hello")]
    private void SayHello()
    {
        Console.WriteLine("Hello!");
    }

    [Test]
    [AllureTag("NUnit", "Debug")]
    [AllureIssue("GitHub#1", "https://github.com/unickq/allure-nunit")]
    [AllureSeverity(SeverityLevel.critical)]
    [AllureFeature("Core")]
    public void EvenTest([Range(0, 5)] int value)
    {
        SayHello();
            
        //Wrapping Step
        AllureLifecycle.Instance.WrapInStep(
            () => { Assert.IsTrue(value % 2 == 0, $"Oh no :( {value} % 2 = {value % 2}"); },
            "Validate calculations");
    }
}

ToDo:

  • NET Standard 2.0 (NET 4.5 without steps)
  • Parallelizable test support
  • Attachments
  • Allure SetUp/TearDown support
  • Console Output as attached file
  • Add ignored (not started) tests to results. Assert.Ignore() works :) [AllureDisplayIgnored]
  • Steps attribute for non-test methods

Installation and Usage

  • Download from Nuget with all dependencies
  • Configure allureConfig.json
  • Set [AllureNUnit] attribute under test fixture
  • Use other attributes if needed