Comment : créer un test unitaire vide pour SQL Server

Incluez des tests unitaires dans votre projet de base de données pour vérifier que les modifications apportées aux objets de base de données n’interrompent pas les fonctionnalités existantes. Les procédures suivantes expliquent comment créer des tests unitaires SQL Server pour n’importe quel objet de base de données. SQL Server Data Tools inclut une prise en charge supplémentaire des fonctions de base de données, des déclencheurs et des procédures stockées. Pour plus d’informations, consultez Guide pratique pour créer des tests unitaires SQL Server pour les fonctions, les déclencheurs et les procédures stockées.

Lorsque vous créez un test unitaire SQL Server à l’aide de la première procédure, un projet de test est automatiquement créé pour vous si aucun projet de test n’existe. Si des projets de test existent déjà, vous avez la possibilité d’ajouter le nouveau test à l’un de ces projets ou de créer un projet de test. Pour plus d’informations sur les projets de test, consultez How to : Create a Test Project for SQL Server Database Unit Testing.

Vous avez deux options pour créer un test unitaire SQL Server :

  • Créez un test unitaire SQL Server à l’intérieur d’une nouvelle classe de test.

    Tous les tests unitaires SQL Server au sein d’une classe de test donnée utilisent les mêmes scripts TestInitialize et TestCleanup. Créez une classe de test si vous souhaitez que votre test unitaire utilise différents scripts TestInitialize et TestCleanup que d’autres tests unitaires. Pour plus d’informations, consultez Scripts dans les tests unitaires SQL Server.

  • Créez un test unitaire SQL Server à l’intérieur d’une classe de test existante.

    Choisissez cette option si votre test unitaire utilise les mêmes scripts TestInitialize et TestCleanup que d’autres tests unitaires dans la classe.

Créer un test unitaire SQL Server à l’intérieur d’une nouvelle classe de test

  1. Dans le menu Test , sélectionnez Nouveau test.

    La boîte de dialogue Ajouter un nouveau test s’affiche.

  2. Sous Modèles, sélectionnez Test unitaire SQL Server.

  3. Sous Nom du test, entrez un nom pour le test.

  4. Sous Ajouter au projet de test, sélectionnez un projet de test existant dans lequel ajouter ce test. Si aucun projet de test n’existe ou si vous souhaitez créer un projet de test, sélectionnez Créer un <projet de test linguistique>.

  5. Cliquez sur OK.

    Si votre projet de test est nouveau, la boîte de dialogue Nouveau projet de test s’affiche. Nommez le projet et sélectionnez OK.

    Si votre projet de test est nouveau ou n’a pas été configuré, la boîte de dialogue Sql Server Test Configuration <ProjectName> s’affiche. Cette boîte de dialogue vous permet de configurer les informations suivantes pour votre projet de test :

    • Connexion de base de données utilisée pour exécuter des tests.

    • Connexion de base de données utilisée pour valider les résultats des tests, déployer une base de données et générer des données.

    • Déploiement automatique du projet de base de données et modifications de schéma associées à une configuration de projet donnée avant d’exécuter des tests unitaires.

    Pour plus d’informations, consultez Guide pratique pour configurer l’exécution des tests unitaires SQL Server.

  6. Fournissez des informations de configuration de projet et sélectionnez OK.

    - ou -

    Sélectionnez Annuler pour créer le test unitaire sans configurer le projet de test.

    Votre test vide s’affiche dans SQL Server Unit TestDesigner. Selon la langue que vous avez spécifiée pour la création du projet de test, un fichier de code source Visual Basic ou C# est ajouté au projet de test. Ce fichier contient la classe de test unitaire SQL Server générée par SQL Server Data Tools pour le test unitaire que vous avez créé. Cette classe de test peut contenir un ou plusieurs tests unitaires que vous pouvez ajouter via le Concepteur de tests unitaires SQL Server ou par le biais du code en tant que nouvelles méthodes de test dans la classe de test.

    Vous pouvez également ajouter d’autres tests en :

    • Cliquez avec le bouton droit sur un projet de test dans l’Explorateur de solutions, en sélectionnant Ajouter, Nouveau test, puis SQL Server Unit Test.
    • Dans l’Explorateur d’objets SQL Server, sélectionnez Créer des tests unitaires.

    Lorsque vous sélectionnez ce fichier dans l’Explorateur de solutions, il s’affiche dans le Concepteur de tests unitaires SQL Server, par défaut. Pour afficher le code ou pour le personnaliser pour ajouter d’autres fonctionnalités à vos tests unitaires, sélectionnez le fichier, cliquez avec le bouton droit et choisissez Afficher le code.

Créer un test unitaire SQL Server à l’intérieur d’une classe de test existante

  1. Ouvrez une classe de test unitaire SQL Server existante dans le Concepteur de tests unitaires SQL Server. Vous pouvez accéder au Concepteur de tests unitaires SQL Server en double-cliquant sur le fichier de code source de test unitaire dans l’Explorateur de solutions.

  2. Sélectionnez le signe plus (+) dans la barre de navigation pour afficher la fenêtre de dialogue Spécifier un nom de test unitaire.

  3. Tapez un nom et sélectionnez OK.

    Votre nouveau test unitaire SQL Server est disponible dans la liste déroulante dans la barre de navigation. Elle est également ajoutée en tant que nouvelle méthode de test dans la classe de test. Pour afficher la méthode de test dans le code, sélectionnez le fichier de classe, cliquez avec le bouton droit et choisissez Afficher le code. Le nom du fichier de classe de test actuel s’affiche sous l’onglet en haut du Concepteur de tests unitaires SQL Server.

Une fois que vous avez configuré le projet de test et créé le test unitaire, les étapes suivantes sont les suivantes :

  • Ajoutez un script de test Transact-SQL.
  • Définissez des actions de pré-test et de post-test.
  • Ajoutez des conditions de test ou une autre instruction assert pour vérifier les résultats du script.

Note

La condition de test inconclusive est la condition par défaut ajoutée à chaque test. Cette condition de test est incluse pour indiquer que la vérification de test n’a pas été implémentée. Supprimez cette condition de test de votre test après avoir ajouté d’autres conditions de test. Pour plus d’informations, consultez Guide pratique pour ajouter des conditions de test à des tests unitaires de base de données.