Can anybody point me to some resources for Give-When-Then style of testing with NUnit?
4 Answers
The Given When Then style correlates closely to the Arrange Act Assert style for unit testing.
Here's an example:
[Test]
public void RotateAngle_Given27Degress_Returns64Degrees()
{
//Arrange or Given
var someAngleClass = new Angle();
//Act or When
var result = someAngleClass.Rotate(27);
//Assert or Then
Assert.That(result, Is.EqualTo(64));
}
The great thing about this testing style is you don't need to see the underlying code to understand the intent of the behavior.
For more info here are some sites:

- 25,330
- 8
- 76
- 125
If you download, and add a reference to, StoryQ, you can use a nice BDD style (see samples by clicking the link) and at the same time use NUnit as usual (and TestDriven.Net, R#'s runner, or what have you).

- 4,039
- 3
- 28
- 28
You might also check a small library
https://www.nuget.org/packages/Heleonix.Testing.NUnit/
Instead of writing comments like //Arrange, //Act, //Assert
or naming unreadable methods like Given_UserIsLoggedIn_When_SomeButtonIsPressed_Then_BlaBla
in you tests, the library provides ability to write tests in GWT and AAA styles in manner of JavaScript's Jasmine orJest. See Readme:
https://github.com/Heleonix/Heleonix.Testing/blob/master/README.md

- 149
- 1
- 6