10. Cas nominal
[Fact]
public void FourWheelDrive_Turn()
{
// Arrange
var wheelStubs = Enumerable.Repeat(new WheelStub(), 4);
var fourWheelDrive = new FourWheelDrive(wheelStubs);
// Act
var wheelStub = new WheelStub();
var isTurned = fourWheelDrive.Turn(wheelStub, 10);
// Assert
Assert.True(isTurned);
}
11. Cas d’erreur
[Fact]
public void FourWheelDrive_Turn_ExpectsArgumentOutOfRangeException()
{
// Arrange
var wheelStubs = Enumerable.Repeat(new WheelStub(), 4);
var fourWheelDrive = new FourWheelDrive(wheelStubs);
// Act
var wheelStub = new WheelStub();
Action func = () => fourWheelDrive.Turn(wheelStub, 1000);
// Assert
var ex = Assert.Throws<ArgumentOutOfRangeException>(func);
Assert.IsType<ArgumentOutOfRangeException>(ex);
}
13. TDD
= Test Driven Development
Principle
Ecrire d’abord les tests unitaires, ils sont en rouge
Ecrire les lignes de code pour passer les tests au vert
Réorganiser vos codes
Un autre nom : « Red-Green Testing »
14. Ce que nous avons vu
Les tests unitaires
Cas de test
Outils (.NET Core)
TDD