Korben schreef op vrijdag 10 januari 2014 @ 15:40:
[...]
Ik zou je sowieso adviseren een ander test framework te gebruiken dan dat van Microsoft. xUnit of NUnit zijn veel fijnere frameworks om mee te werken.
Verder zou ik m'n test-method een duidelijkere naam geven. Een veelgebruikte conventie is dat je sowieso de MUT (method under test) benoemd, de omstandigheden en het verwachte resultaat.
Dan kun je het zo schrijven:
C#:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 \[Fact] // mits je xunit gebruikt public void HasNegativeBalance_NegativeBalance_ReturnsTrue() // method _ condition _ expectation { //Arrange var bankAccount = new BankAccount {Credits = -200}; //Act var result = bankAccount.HasNegativeBalance(); //Assert Assert.True(result); } // en door... \[Fact] public void HasNegativeBalance_ZeroBalance_ReturnsFalse() { //... } \[Fact] public void HasNegativeBalance_PositiveBalance_ReturnsFalse() { //... }
edit:
Godskolere, het is vrijdag zeg...
Ja, zo wordt de test inderdaad wel duidelijker ja. Zeker wanneer je 20 tests onder elkaar hebt staan is het wel fijn dat je aan de naam al kan zien welke methode je uitvoert en wat je verwacht. Anders moet je inderdaad elke keer de code in om te kijken waarom de test gefaald is.
Bedankt.