Donné -When-Then exemple avec NUnit
Question
Quelqu'un peut-il m'indiquer des ressources pour le style de test Give-When-Then avec NUnit?
La solution
Si vous téléchargez et ajoutez une référence à StoryQ , vous pouvez utiliser un joli style BDD (voir échantillons en cliquant sur le lien) et en même temps, utilisez NUnit comme d'habitude (et TestDriven.Net, le coureur de R #, ou ce que vous avez).
Autres conseils
Le style "Given When Then" correspond étroitement au style Arrange Act Assert pour les tests unitaires.
Voici un exemple:
[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));
}
L'avantage de ce style de test est qu'il n'est pas nécessaire de voir le code sous-jacent pour comprendre l'intention du comportement.
Pour plus d'informations, voici quelques sites:
Je sais que c'est une vieille question, mais si vous ne l'avez pas déjà fait, vous devriez jeter un coup d'œil à SpecFlow . Il vous permet d'écrire la spécification en texte clair dans un fichier de fonctionnalités. L'outil générera automatiquement des tests NUnit en fonction du fichier de fonctionnalités.
Vous pouvez également vérifier une petite bibliothèque
https://www.nuget.org/packages/Heleonix.Testing.NUnit/
Au lieu d'écrire des commentaires tels que // Arrange, // Act, // Assert
ou nommer des méthodes illisibles telles que Given_UserIsLoggedIn_When_SomeButtonIsPressed_Then_BlaBla
dans vos tests, la bibliothèque permet de rédiger des tests dans GWT et Les styles AAA à la manière de Jasmine orJest de JavaScript. Voir le fichier Lisez-moi:
https://github.com/Heleonix/Heleonix.Testing/blob/ maître / LISEZMOI