Visual Studio Code

Visual Studio Code est un excellent IDE. Plus léger que le Visual Studio complet, il s’adopte facilement. Nous avons créé notre premier projet avec VS Code, voyons maintenant comment cet outil nous permet de faire des tests unitaires. Nous verrons aussi comment créer une solution avec plusieurs projets et ajouter une référence à un projet dans un autre.

Création de la solution

Je suppose que vous avez déjà Visual Studio Code installé.Avant toute chose, nous allons créer une solution.

  • ouvrir un nouveau dossier dans le menu Fichier>Ouvrir le dossier
  • vérifier que vous avez l’extension C# installé, menu Afficher>Extension
    Visual Studio code C# extension

La création d’une solution n’est pas obligatoire mais elle permet de mieux organiser notre code. Ouvrez le terminal, menu afficher>terminal intégré. Dans le terminal, tapez :

dotnet new sln;

Notre solution est créée, elle porte le nom du dossier parent, dans mon exemple tu.

Visual Studio Code solution

Le fichier solution apparait dans l’explorateur (Ctrl + Maj + E).

Création des projets

  • Créez un sous répertoire src. Vous pouvez le faire en ligne de commande (mkdir src) ou dans l’explorateur Windows.
  • Se déplacer dans le dossier src et créer un nouveau projet console.
mkdir src;
cd src;
mkdir ConsoleApp;
cd ConsoleApp;
dotnet new console;

Créons un nouveau projet bibliothèque de classe. Avec le code suivant

cd..;
mkdir Lib;
cd Lib;
dotnet new classlib;

Avec le code ci-dessus, on revient au dossier parent de src, on crée un nouveau dossier Lib, on se déplace vers ce dossier et on crée notre bibliothèque de classes.

On a créé nos deux nouveaux projets ConsoleApp et Lib. Ils apparaissent bien dans l’explorateur.

Visual Studio Code

Les projets existent mais ne sont pas encore liés à la solution. Faisons le avec le code suivant.

cd ..
cd ..
dotnet sln add src\ConsoleApp\ConsoleApp.csproj
dotnet sln add src\Lib\Lib.csproj

Tests unitaires

Nous allons créer deux fonctions bidons dans notre bibliothèque de classe. Modifiez le fichier Class1.cs avec le code suivant.

using System;

namespace Lib
{
    static public class Class1
    {
        public static int Addition(int a, int b)
        {
            return a + b;
        }

        public static int Multiply(int a, int b)
        {
            return a * b;
        }
    }
}

Créons maintenant notre projet de tests unitaires.

cd ..
cd ..
mkdir test;
cd test;
dotnet new xunit;

Le code suivant nous permet de créer un nouveau dossier test et d’y créer notre projet de tests unitaires.

Modifions le fichier UnitTest1.cs créé de la sorte.

using System;
using Xunit;
using Lib;

namespace Tests
{
    public class UnitTest1
    {
        [Fact]
        public void Test1()
        {
            int multiplication = Class1.Multiply(4,5);

            Xunit.Assert.Equal(20, multiplication);
        }

        [Fact]
        public void Test2()
        {
            int addition = Class1.Addition(2, 3);

            Xunit.Assert.Equal(12, addition);
        }
    }
}

Nous testons donc les fonctions Addition et Multiplication que nous avons créées dans Class1. Ajoutez une référence à notre bibliothèque de classes dans le projet de test.

dotnet add reference ..\..\src\Lib\Lib.csproj

Ajoutons le projet de test à la solution. Revenir à la racine de la solution (cd..) et taper:

dotnet sln add .\test\test.csproj

Se déplacer vers le dossier qui contient le projet de test et taper le code suivant pour lancer les tests.

dotnet test;

Visual Studio code test unitaire

Les résultats nous montrent que Test1 a réussi, pas Test2.

Conclusion

Il est très facile de mettre en place des tests unitaires sous Visual Studio Code, à condition de ne être allergique aux lignes de commandes. Vu comme VS Code est populaire auprès des devs, on peut affirmer que ce n’est pas un inconvénient.

Auteur : Daniel MINKO FASSINOU

Laisser un commentaire




Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.