Démarrer avec les tests unitaires .NET : Un exemple pratique
Les tests unitaires sont essentiels pour le développement logiciel, car ils garantissent la qualité et la fiabilité de votre code. En .NET, l'utilisation des tests unitaires est facilitée par le framework MSTest intégré.
Dans cet article, nous allons explorer un exemple concret de test unitaire .NET, en nous concentrant sur la création et l'exécution de tests pour une méthode simple.
Un exemple de code : Calcul de la somme de deux nombres
Imaginons une classe C# appelée Calculator
avec une méthode Add
qui prend en entrée deux nombres et renvoie leur somme :
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
}
Écrire un test unitaire pour la méthode Add
Pour tester la méthode Add
, nous allons créer une classe de test nommée CalculatorTest
:
using Microsoft.VisualStudio.TestTools.UnitTesting;
[TestClass]
public class CalculatorTest
{
[TestMethod]
public void Add_ShouldReturnCorrectSum_WhenGivenTwoNumbers()
{
// Arrange
Calculator calculator = new Calculator();
int a = 5;
int b = 3;
int expectedSum = 8;
// Act
int actualSum = calculator.Add(a, b);
// Assert
Assert.AreEqual(expectedSum, actualSum);
}
}
Explication du code :
[TestClass]
: Déclare la classeCalculatorTest
comme une classe de test.[TestMethod]
: Déclare la méthodeAdd_ShouldReturnCorrectSum_WhenGivenTwoNumbers
comme un test unitaire.- Arrange: Initialisation de la classe
Calculator
et des variables de test. - Act: Exécution de la méthode
Add
à tester. - Assert: Vérification de la valeur de retour de la méthode
Add
par rapport à la valeur attendue. La méthodeAssert.AreEqual
vérifie si les deux valeurs sont égales.
Exécuter les tests unitaires
Une fois les tests unitaires créés, vous pouvez les exécuter directement dans Visual Studio.
En résumé, les tests unitaires sont un outil puissant pour garantir la qualité de votre code .NET. Ils vous permettent de détecter rapidement les erreurs, de refactoring avec confiance et d'améliorer la fiabilité de votre application.
N'oubliez pas que les tests unitaires sont un élément crucial du développement logiciel, et qu'il est important de les écrire de manière exhaustive pour couvrir tous les cas d'utilisation possibles de votre code.