Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article présente le concept de test et illustre la façon dont différents types de tests peuvent être utilisés pour valider le code. Différents outils sont disponibles pour tester des applications .NET, telles que l’interface CLI .NET CLI ou Integrated Development Environment (IDEs).
Types de test
Les tests automatisés sont un excellent moyen de s’assurer que le code de l’application fait ce que ses auteurs ont l’intention. Cet article traite des tests unitaires, des tests d’intégration et des tests de charge.
Tests unitaires
Un test unitaire est un test qui exerce des composants logiciels ou des méthodes individuels, également appelé « unité de travail ». Les tests unitaires doivent uniquement tester le code dans le contrôle du développeur. Ils ne testent pas les problèmes d’infrastructure. Les problèmes d’infrastructure incluent l’interaction avec les bases de données, les systèmes de fichiers et les ressources réseau.
Pour plus d’informations sur la création de tests unitaires, consultez Outils de test.
Tests d’intégration
Un test d’intégration diffère d’un test unitaire dans lequel il exerce deux composants logiciels ou plus capables de fonctionner ensemble, également appelé « intégration ». Ces tests fonctionnent sur un spectre plus large du système testé, tandis que les tests unitaires se concentrent sur des composants individuels. Souvent, les tests d’intégration incluent des problèmes d’infrastructure.
Tests de charge
Un test de charge vise à déterminer si un système peut gérer ou non une charge spécifiée. Par exemple, le nombre d’utilisateurs simultanés utilisant une application et la capacité de l’application à gérer les interactions de manière réactive. Pour plus d’informations sur le test de charge des applications web, consultez ASP.NET Core test de charge/stress.
Considérations relatives aux tests
Gardez à l’esprit les meilleures pratiques pour l’écriture de tests. Par exemple, le développement piloté par les tests (TDD) est le moment où vous écrivez un test unitaire avant le code qu’il est destiné à vérifier. TDD est comme créer un plan pour un livre avant de l’écrire. Le test unitaire permet aux développeurs d’écrire du code plus simple, lisible et efficace.
Outils de test
Lors de l’exécution de tests dans .NET, il existe deux composants impliqués : la plateforme de test et l’infrastructure de test.
Plateformes de test
La plateforme de test est le moteur qui exécute des tests et communique avec des outils tels que les IDE et l’interface CLI.
Utilisez la vue d’ensemble des plateformes de test pour comprendre les différences entre VSTest et Microsoft.Testing.Platform et choisir la meilleure plateforme pour votre scénario.
Pour obtenir des conseils sur la migration, consultez Migrer de VSTest vers Microsoft.Testing.Platform.
Frameworks de test
L’infrastructure de test est basée sur la plateforme de test. Il définit l’ensemble d’attributs et d’API disponibles pour vous, en tant qu’auteur de test. Il est généralement alimenté par un adaptateur de test, qui agit comme une couche de communication entre l’infrastructure de test et la plateforme de test. Les frameworks de test populaires sont MSTest, NUnit, TUnit et xUnit.net.
MSTest
MSTest est l’infrastructure de test Microsoft pour toutes les langues .NET. Il est extensible et fonctionne avec .NET CLI, Visual Studio, Visual Studio Code et Rider. Il prend en charge VSTest et Microsoft.Testing.Platform.
Pour plus d’informations, consultez les ressources suivantes :
NUnit
NUnit est une infrastructure de test unitaire pour tous les langages .NET. Initialement, NUnit a été porté à partir de JUnit, et la version de production actuelle a été réécrite avec de nombreuses nouvelles fonctionnalités et prise en charge d’un large éventail de plateformes .NET. C'est une project de la Fondation .NET. Il prend en charge VSTest et Microsoft.Testing.Platform.
Pour plus d’informations, consultez les ressources suivantes :
- Prise en charge de Microsoft.Testing.Platform dans NUnit (NUnit runner)
- Tests unitaires avec C#
- Tests unitaires avec F#
- Test unitaire avec Visual Basic
TUnit
TUnit est entièrement basé sur Microsoft.Testing.Platform et ne prend pas en charge VSTest. Pour plus d’informations, reportez-vous à la documentation TUnit.
xUnit.net
xUnit.net est un outil de test unitaire gratuit, open source et axé sur la communauté pour .NET. L’inventeur original de NUnit v2 a écrit xUnit.net. xUnit.net est la technologie la plus récente pour les tests unitaires .NET applications. Il fonctionne également avec ReSharper, CodeRush et TestDriven.NET. xUnit.net est une project de la Fondation .NET et fonctionne sous son code de conduite. Il prend en charge VSTest et Microsoft.Testing.Platform
Pour plus d’informations, consultez les ressources suivantes :
- prise en charge de Microsoft.Testing.Platform dans xUnit.net v3
- Tests unitaires avec C#
- Tests unitaires avec F#
- Test unitaire avec Visual Basic
Exécution des tests
.NET CLI
Vous pouvez exécuter des tests unitaires à partir de tous les projets de test d’une solution à l’aide de l’interface CLI .NET CLI avec la commande dotnet test. L’interface CLI .NET expose la plupart des fonctionnalités que Integrated Development Environments (IDEs) rendre disponibles via les interfaces utilisateur. L’outil en ligne de commande .NET est multiplateforme et peut être utilisé dans le cadre des pipelines d’intégration et de livraison continues. L’interface CLI .NET est utilisée avec des processus scriptés pour automatiser les tâches courantes.
IDE
Que vous utilisiez Visual Studio, Visual Studio Code ou Rider, il existe des interfaces utilisateur graphiques pour tester les fonctionnalités. Il existe plus de fonctionnalités disponibles pour les IDE que l’interface CLI, par exemple Live Unit Testing. Pour plus d'informations, consultez Inclusion et exclusion de tests avec Visual Studio.
Voir aussi
Pour plus d’informations, consultez les articles suivants :