Heleonix.Testing.NUnit
2.0.1
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Heleonix.Testing.NUnit --version 2.0.1
NuGet\Install-Package Heleonix.Testing.NUnit -Version 2.0.1
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="Heleonix.Testing.NUnit" Version="2.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Heleonix.Testing.NUnit --version 2.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Heleonix.Testing.NUnit, 2.0.1"
#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.
// Install Heleonix.Testing.NUnit as a Cake Addin #addin nuget:?package=Heleonix.Testing.NUnit&version=2.0.1 // Install Heleonix.Testing.NUnit as a Cake Tool #tool nuget:?package=Heleonix.Testing.NUnit&version=2.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Heleonix.Testing
The library for writing tests in BDD and AAA styles
Install
https://www.nuget.org/packages/Heleonix.Testing.NUnit
AAA: Arrange Act Assert
Structure
using global::NUnit.Framework;
using Heleonix.Testing.NUnit.Aaa;
using static Heleonix.Testing.NUnit.Aaa.AaaSpec;
/// <summary>
/// Tests the <see cref="MyComponent"/>.
/// </summary>
[ComponentTest(Type = typeof(MyComponent))]
public static class MyComponentTests
{
/// <summary>
/// Tests the <see cref="MyComponent.Member1"/>.
/// </summary>
[MemberTest(Name = nameof(MyComponent.Member1))]
public static void Member1()
{
Arrange(() =>
{
});
Act(() =>
{
});
Teardown(() =>
{
});
When("the condition #1 is true", () =>
{
Arrange(() =>
{
});
Act(() =>
{
});
Teardown(() =>
{
});
Should("lead to the result #1", () =>
{
});
});
When("the condition #2 is true", () =>
{
Arrange(() =>
{
});
Act(() =>
{
});
Teardown(() =>
{
});
Should("lead to the result #2", () =>
{
});
});
}
/// <summary>
/// Tests the <see cref="MyComponent.Member2"/>.
/// </summary>
[MemberTest(Name = nameof(MyComponent.Member2))]
public static void Member2()
{
Arrange(() =>
{
});
Act(() =>
{
});
Teardown(() =>
{
});
When("the action #1 is executed", () =>
{
Arrange(() =>
{
});
Act(() =>
{
});
Teardown(() =>
{
});
Should("lead to the result #1", () =>
{
Assert.Fail();
});
And("the condition #1 is true", () =>
{
Arrange(() =>
{
});
Act(() =>
{
});
Teardown(() =>
{
});
Should("lead to the result #2", () =>
{
});
});
});
}
}
Tests Output
BDD: Behavior Driven Development
Structure
using global::NUnit.Framework;
using Heleonix.Testing.NUnit.Bdd;
using static Heleonix.Testing.NUnit.Bdd.BddSpec;
/// <summary>
/// Tests the TheCoolStory.
/// </summary>
[Feature(Name = "The Cool Feature")]
OR
[Story(
Id = "111",
Summary = "The cool story",
AsA = "Product owner",
IWant = "a cool story",
SoThat = "I earn a lot of money")]
public static class TheCoolStory
{
/// <summary>
/// Tests the Scenario.
/// </summary>
[Scenario(Name = "Earn a lot of money in the story")]
public static void Scenario()
{
Given("the precondition #1", () =>
{
BeforeEach(() => { });
AfterEach(() => { });
When("the action #1 is executed", () =>
{
BeforeEach(() => { });
AfterEach(() => { });
Then("the result #1 happens", () => { });
And("the condition #1 is true", () =>
{
BeforeEach(() => { });
AfterEach(() => { });
Then("the result #2 happens", () => { Assert.Fail(); });
});
});
And("condition #2 is true", () =>
{
BeforeEach(() => { });
AfterEach(() => { });
When("the action #2 is executed", () =>
{
BeforeEach(() => { });
AfterEach(() => { });
Then("the result #3 happens", () => { });
And("the condition #3 is true", () =>
{
BeforeEach(() => { });
AfterEach(() => { });
Then("the result #4 happens", () => { });
});
});
});
});
}
}
Tests Output
Product | Versions 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. |
.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.
-
.NETStandard 2.0
- nunit (>= 3.13.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Configured the package as non-development dependency.