Ejemplo dado -Cuando-Entonces con NUnit
Pregunta
¿Alguien puede señalarme algunos recursos para el estilo de prueba Give-When-Then con NUnit?
Solución
Si descarga y agrega una referencia a, StoryQ , puede usar un bonito estilo BDD (consulte muestras haciendo clic en el enlace) y al mismo tiempo use NUnit como de costumbre (y TestDriven.Net, el corredor de R #, o lo que sea que tenga).
Otros consejos
El estilo Given When Then se correlaciona estrechamente con el estilo Arrange Act Assert para pruebas unitarias.
Aquí hay un ejemplo:
[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));
}
Lo mejor de este estilo de prueba es que no necesita ver el código subyacente para comprender la intención del comportamiento.
Para más información aquí hay algunos sitios:
Sé que esta es una pregunta antigua, pero si aún no lo ha hecho, debe consultar SpecFlow . Le permite escribir la especificación en texto claro en un archivo de características. La herramienta generará automáticamente pruebas de NUnit basadas en el archivo de características.
También puede consultar una pequeña biblioteca
https://www.nuget.org/packages/Heleonix.Testing.NUnit/
En lugar de escribir comentarios como // Arrange, // Act, // Assert
o nombrar métodos ilegibles como Given_UserIsLoggedIn_When_SomeButtonIsPressed_Then_BlaBla
en sus pruebas, la biblioteca ofrece la capacidad de escribir pruebas en GWT y Estilos AAA en forma de jazmín o jest de JavaScript. Ver archivo Léame:
https://github.com/Heleonix/Heleonix.Testing/blob/ master / README.md