Partager via


Comment : créer un test unitaire ASP.NET

Mise à jour : novembre 2007

Vous utilisez des tests unitaires ASP.NET pour tester des méthodes de test qui font partie de projets ASP.NET. Vous pouvez créer un test unitaire ASP.NET de deux manières :

  • En générant le test unitaire ASP.NET à partir d'un projet ASP.NET. Il s'agit du scénario le plus courant.

  • En configurant un test unitaire existant comme test unitaire ASP.NET.

Vous pouvez également spécifier des paramètres d'une configuration de série de tests qui correspondent aux attributs utilisés par des tests unitaires ASP.NET. Ces procédures sont décrites dans les sections suivantes.

Remarque :

Lorsque vous exécutez des tests unitaires ASP.NET, n'utilisez pas les attributs ClassCleanupAttribute ou ClassInitializeAttribute sur une méthode dans une classe qui contient un test unitaire ASP.NET. De même, n'utilisez pas les attributs AssemblyCleanupAttribute ou AssemblyInitializeAttribute dans le même assembly qu'un test unitaire ASP.NET. Le résultat de l'utilisation de ces attributs dans ces situations est indéfini. Toutefois, vous pouvez utiliser les attributs TestInitializeAttribute et TestCleanupAttribute pour tout test unitaire.

Les scripts de configuration et les scripts de nettoyage s'exécutent avant et après les séries de tests, quels que soient les types de tests contenus dans ces séries de tests. Pour plus d'informations sur les scripts exécutés avec les séries de tests, consultez Vue d'ensemble du déploiement de test et Comment : spécifier la configuration d'une série de tests.

Génération d'un test unitaire ASP.NET

Pour générer un test unitaire ASP.NET, vous devez d'abord créer un site Web ASP.NET dans votre solution Visual Studio. Vous ajoutez ensuite une classe au projet de site Web, puis vous générez un test unitaire à partir de cette classe.

Pour générer un test unitaire ASP.NET

  1. Pour générer un test unitaire ASP.NET, commencez par créer un site Web ASP.NET. Pour cela, cliquez avec le bouton droit sur votre solution, pointez sur Ajouter, puis cliquez sur Nouveau site Web.

  2. Dans la boîte de dialogue Ajouter un nouveau site Web, cliquez sur Site Web ASP.NET.

  3. Sous Emplacement, cliquez sur Système de fichiers pour indiquer Serveur de développement ASP.NET.

  4. Cliquez sur OK.

    Vous avez maintenant un nouveau site Web.

  5. Ajoutez une classe à ce projet. Pour cela, dans l'Explorateur de solutions, cliquez avec le bouton droit sur le site Web, puis cliquez sur Ajouter un nouvel élément.

  6. Dans la boîte de dialogue Ajouter un nouvel élément, cliquez sur Classe, puis sur Ajouter.

  7. Une boîte de dialogue Microsoft Visual Studio s'affiche et vous invite à placer la nouvelle classe dans le dossier App_Code. Cliquez sur Oui.

    Remarque :

    Vous ne pouvez pas générer de tests à partir de code dans un fichier .aspx ni dans un dossier autre que le dossier App_Code.

  8. Générez un test unitaire ASP.NET. Si le fichier de nouvelle classe n'est pas déjà ouvert, double-cliquez dessus dans l'Explorateur de solutions pour l'ouvrir.

  9. Cliquez avec le bouton droit sur la classe dans le fichier de classe, puis cliquez sur Créer des tests unitaires.

  10. La boîte de dialogue Créer des tests unitaires s'affiche. Pour plus d'informations sur l'utilisation de cette boîte de dialogue pour générer des tests unitaires, consultez Comment : générer un test unitaire.

  11. Vérifiez que les classes, méthodes ou espaces de noms pour lesquels vous souhaitez générer des tests sont sélectionnés.

  12. (Facultatif) Acceptez le Projet de sortie par défaut ou sélectionnez un nouveau projet.

  13. Lorsque vous avez terminé, cliquez sur OK.

    Le nouveau test unitaire ASP.NET est ajouté à un fichier dans votre projet de test.

    Pour afficher le test unitaire, ouvrez le fichier de test et faites défiler jusqu'à la fin. Les attributs nécessaires à l'exécution d'un test unitaire comme test unitaire ASP.NET ont été spécifiés automatiquement. Pour plus d'informations sur ces attributs, consultez la procédure suivante intitulée Configuration d'un test unitaire ASP.NET.

Configuration d'un test unitaire ASP.NET

Vous pouvez convertir un test unitaire existant en test unitaire ASP.NET en le configurant, c'est-à-dire en assignant des valeurs à certains des attributs personnalisés du test. Vous définissez ces valeurs dans le fichier de code qui contient le test unitaire.

Avant de définir les attributs personnalisés, vous devez ajouter une référence à l'espace de noms qui prend en charge les attributs personnalisés ; il s'agit de l'espace de noms Microsoft.VisualStudio.TestTools.UnitTesting.Web. Avec cette référence en place, IntelliSense peut vous aider à définir les valeurs d'attributs.

Remarque   Lorsque vous générez un test unitaire ASP.NET, ces attributs sont définis automatiquement.

Pour configurer un test unitaire ASP.NET

  1. Ouvrez le fichier de code qui contient le test unitaire.

  2. Définissez les attributs suivants du test unitaire :

[TestMethod]

Tous les tests unitaires nécessitant l'attribut [TestMethod], cet attribut sera déjà en place.

[UrlToTest()]

Il s'agit de l'URL testée lorsque ce test unitaire est exécuté ; par exemple, [UrlToTest(“https://localhost/WebSites/Default.aspx”)]

[HostType()]

Utilisez [HostType(“ASP.NET”)]. Les tests sont effectués en général sous le processus hôte VSTest, mais les tests unitaires ASP.NET doivent s'exécuter sous le processus hôte ASP.NET.

Exemples

Exemple 1. Si vous exécutez votre site Web avec le Serveur de développement ASP.NET, les attributs et valeurs que vous définissez pour un test unitaire ASP.NET peuvent ressembler aux suivants :

[TestMethod()]

[HostType("ASP.NET")]

[UrlToTest("https://localhost:25153/WebSite1")]

[AspNetDevelopmentServerHost("D:\\Documents and Settings\\user name\\My Documents\\Visual Studio 2005\\WebSites\\WebSite1", "/WebSite1")]

Exemple 2. Pour tester un site Web exécuté sous les services Internet (IIS), utilisez uniquement les attributs TestMethod, HostType et UrlToTest :

[TestMethod()]

[HostType("ASP.NET")]

[UrlToTest("https://localhost:25153/WebSite1")]

Configuration de tests unitaires ASP.NET à l'aide de la configuration de série de tests

Vous pouvez spécifier des paramètres d'une configuration de série de tests qui correspondent aux attributs utilisés par des tests unitaires ASP.NET. Une fois ces attributs spécifiés dans une configuration de série de tests, les paramètres s'appliqueront lors de l'exécution de tout test unitaire ASP.NET, à chaque fois que cette configuration de série de tests est active.

Remarque :

Un seul ensemble de paramètres pour les tests unitaires ASP.NET peut être en vigueur : les paramètres d'exécution ou les paramètres d'attributs, mais jamais une combinaison des deux. Les paramètres de configuration de série de tests sont prioritaires par rapport aux attributs, s'ils sont présents. Cela signifie que même si vous spécifiez un seul paramètre ASP.NET dans la configuration de série de tests, tout paramètre ASP.NET spécifié comme attribut est ignoré.

Pour configurer des tests unitaires ASP.NET à l'aide de la configuration de série de tests

  1. Ouvrez un fichier de configuration de série de tests. Pour plus d'informations, consultez Comment : spécifier la configuration d'une série de tests.

  2. Sur la page Hôtes, définissez le Type d'hôte à ASP.NET.

    Cela affiche des choix supplémentaires, dont certains correspondent à des attributs que vous pouvez spécifier dans le code, tels que URL à tester. Ces attributs sont décrits dans la procédure précédente intitulée « Configuration d'un test unitaire ASP.NET ».

    Lorsque vous avez terminé de définir les valeurs sur la page Hôtes, cliquez sur Enregistrer, puis sur OK.

Voir aussi

Tâches

Comment : spécifier la configuration d'une série de tests

Comment : appliquer une configuration de série de tests

Concepts

Vue d'ensemble des tests unitaires ASP.NET

Autres ressources

Comment : générer un test unitaire