Depuis que Microsoft a rendu les premiers composants de .NET open source, de nombreux autres et des outils liés à la plateforme ont été ajoutés à la pile de technologies open source du géant du logiciel. Le dernier à rejoindre la liste est Visual Studio Test (VS Test). Il s’agit d’une plateforme qui permet d'exécuter des tests, de collecter des données de diagnostic et de générer des rapports.
La plateforme offre une extensibilité pour la prise en charge de la couverture de code, l’analyse d'impact de test… et différents frameworks de tests, dont de nombreux ne sont pas développés par Microsoft. VS Test supporte en effet l'exécution de tests écrits dans différents langages et divers frameworks de test grâce à un modèle d'adaptateur. Selon le choix de l'utilisateur, le framework de test souhaité et son adaptateur correspondant peuvent être acquis en tant que paquet vsix ou NuGet, selon le cas. Les frameworks de test en question incluent NUnit, xUnit, les Google Test Adapters, Jasmine, Karma, Boost Unit, l’extension Qt Test Adapter, etc. Visual Studio Marketplace propose 25 adaptateurs pour utiliser les différents frameworks de test, à partir de la plateforme VS Test.
Sans surprise, l’un des frameworks pris en charge par Visual Studio Test est MSTest V2 via son adaptateur. MSTest V2 est l’évolution de MSTest, un utilitaire de ligne de commande de Microsoft qui exécute des tests unitaires créés dans Visual Studio. Selon Brian Harry, Vice Président de Microsoft chargé des Cloud Developer Services, la société va également rendre open source son framework plus tard cette année.
Comme le montre le diagramme suivant, la solution de test de bout en bout comprend des clients comme Visual Studio et bientôt Visual Studio Code (et bien d'autres). Il est toutefois possible de lancer le test directement à partir de la ligne de commande.
Après les clients, nous avons le test runner qui est le point d’entrée de la plateforme de test. Il s’agit d’un processus de ligne de commande qui reçoit un conteneur de test avec des paramètres détaillant les tests à exécuter (runtime du langage, architecture matérielle, framework de test utilisé, etc.). Le runner va générer d'autres processus qui seront utilisés par la plateforme. Un hôte d’exécution de test (Test Execution Host) va ensuite charger le conteneur de test et exécuter les tests.
Pour communiquer avec les clients et l’hôte d’exécution, le test runner utilise un protocole filaire JSON. Dans le diagramme ci-dessus, les composants en jaune or sont ceux qui ont été récemment rendus open source. Microsoft prévoit de rendre open source bien d’autres parties de sa plateforme de test à l’avenir.
Si vous utilisez des tests unitaires avec Visual Studio, Microsoft affirme qu’il y a de fortes chances que vous utilisiez déjà cette infrastructure. Et si vous utilisez les fonctionnalités de test unitaire fournies dans les preview .NET Core, vous l'utilisez également, d’après le géant du logiciel. La firme rend maintenant la plateforme open source pour permettre aux développeurs de voir comment elle fonctionne et contribuer. Les contributions au projet ne sont toutefois pas encore ouvertes. Microsoft précise également que la plateforme de test, qui est disponible sous licence MIT, est actuellement livrée en tant que composante de Visual Studio 2017 et dans .NET Core Tools Preview 3.
Source : Blog Microsoft
Et vous ?
Qu'en pensez-vous ?
Visual Studio Test : Microsoft rend open source des composants de sa plateforme de test pour Visual Studio
Ouverte à des frameworks de test tiers
Visual Studio Test : Microsoft rend open source des composants de sa plateforme de test pour Visual Studio
Ouverte à des frameworks de test tiers
Le , par Michael Guilloux
Une erreur dans cette actualité ? Signalez-nous-la !