Freigeben über


Vorgehensweise: Erstellen eines leeren SQL Server-Komponententests

Schließen Sie Komponententests in Ihr Datenbankprojekt ein, um sicherzustellen, dass Änderungen, die Sie an Datenbankobjekten vornehmen, vorhandene Funktionen nicht unterbrechen. In den folgenden Verfahren wird erläutert, wie SQL Server-Komponententests für jedes Datenbankobjekt erstellt werden. SQL Server Data Tools bietet zusätzliche Unterstützung für Datenbankfunktionen, Trigger und gespeicherte Prozeduren. Weitere Informationen finden Sie unter So erstellen Sie SQL Server-Unit-Tests für Funktionen, Trigger und gespeicherte Prozeduren.

Wenn Sie einen SQL Server-Komponententest mithilfe des ersten Verfahrens erstellen, wird automatisch ein Testprojekt für Sie erstellt, wenn kein Testprojekt vorhanden ist. Wenn bereits Testprojekte vorhanden sind, haben Sie die Möglichkeit, den neuen Test zu einem dieser Projekte hinzuzufügen, oder Sie können ein neues Testprojekt erstellen. Weitere Informationen zu Testprojekten finden Sie unter How to: Create a Test Project for SQL Server Database Unit Testing.

Sie haben zwei Optionen zum Erstellen eines SQL Server-Komponententests:

  • Erstellen Sie einen neuen SQL Server-Komponententest in einer neuen Testklasse.

    Alle SQL Server-Komponententests innerhalb einer bestimmten Testklasse verwenden dieselben TestInitialize- und TestCleanup-Skripts. Erstellen Sie eine neue Testklasse, wenn Ihr Komponententest andere TestInitialize- und TestCleanup-Skripts als andere Komponententests verwenden soll. Weitere Informationen finden Sie unter Skripts in SQL Server-Komponententests.

  • Erstellen Sie einen neuen SQL Server-Komponententest in einer vorhandenen Testklasse.

    Wählen Sie diese Option aus, wenn ihr Komponententest dieselben TestInitialize- und TestCleanup-Skripts wie andere Komponententests innerhalb der Klasse verwendet.

Erstellen eines SQL Server-Komponententests in einer neuen Testklasse

  1. Wählen Sie im Menü "Test " die Option "Neuer Test" aus.

    Das Dialogfeld " Neuen Test hinzufügen " wird angezeigt.

  2. Wählen Sie unter "Vorlagen" die Option "SQL Server Unit Test" aus.

  3. Geben Sie unter "Testname" einen Namen für den Test ein.

  4. Wählen Sie unter "Zu Testprojekt hinzufügen" ein vorhandenes Testprojekt aus, in das dieser Test hinzugefügt werden soll. Wenn kein Testprojekt vorhanden ist oder Sie ein neues Testprojekt erstellen möchten, wählen Sie "Neues <Sprachtestprojekt> erstellen" aus.

  5. Wählen Sie OK aus.

    Wenn Ihr Testprojekt neu ist, wird das Dialogfeld " Neues Testprojekt " angezeigt. Benennen Sie das Projekt, und wählen Sie "OK" aus.

    Wenn Ihr Testprojekt neu ist oder nicht konfiguriert wurde, wird das Dialogfeld "ProjectName< der SQL Server-Testkonfiguration>" angezeigt. In diesem Dialogfeld können Sie die folgenden Informationen für Ihr Testprojekt konfigurieren:

    • Die Datenbankverbindung, die zum Ausführen von Tests verwendet wird.

    • Die Datenbankverbindung, die verwendet wird, um Testergebnisse zu überprüfen, eine Datenbank bereitzustellen und Daten zu generieren.

    • Die automatische Bereitstellung des Datenbankprojekts und alle zugehörigen Schemaänderungen an einer bestimmten Projektkonfiguration, bevor Sie Komponententests ausführen.

    Weitere Informationen finden Sie unter How to: Configure SQL Server unit test execution.

  6. Geben Sie Projektkonfigurationsinformationen an, und wählen Sie "OK" aus.

    -oder-

    Wählen Sie "Abbrechen " aus, um den Komponententest zu erstellen, ohne das Testprojekt zu konfigurieren.

    Ihr leerer Test wird im SQL Server Unit TestDesigner angezeigt. Je nach der Sprache, die Sie zum Erstellen des Testprojekts angegeben haben, wird dem Testprojekt eine Visual Basic- oder C#-Quellcodedatei hinzugefügt. Diese Datei enthält die SQL Server-Komponententestklasse, die SQL Server Data Tools für den erstellten Komponententest generiert. Diese Testklasse kann einen oder mehrere Komponententests enthalten, die Sie über den SQL Server Unit Test Designer oder über Code als neue Testmethoden in der Testklasse hinzufügen können.

    Sie können auch weitere Tests hinzufügen, indem Sie:

    • Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf ein Testprojekt, wählen Sie "Hinzufügen", "Neuer Test" und dann "SQL Server-Einheitentest" aus.
    • Wählen Sie im SQL Server-Objekt-Explorer " Komponententests erstellen" aus.

    Wenn Sie diese Datei im Projektmappen-Explorer auswählen, wird sie standardmäßig im SQL Server Unit Test Designer angezeigt. Wenn Sie den Code anzeigen oder anpassen möchten, um Ihren Komponententests weitere Funktionen hinzuzufügen, wählen Sie die Datei aus, klicken Sie mit der rechten Maustaste, und wählen Sie "Code anzeigen" aus.

Erstellen eines SQL Server-Komponententests in einer vorhandenen Testklasse

  1. Öffnen Sie eine vorhandene SQL Server-Komponententestklasse im SQL Server-Komponententest-Designer. Sie können auf den SQL Server Unit Test Designer zugreifen, indem Sie im Projektmappen-Explorer auf die Quellcodedatei für Komponententests doppelklicken.

  2. Wählen Sie das Pluszeichen (+) in der Navigationsleiste aus, um das Dialogfeld " Komponententestnamen angeben " anzuzeigen.

  3. Geben Sie einen Namen ein, und wählen Sie "OK" aus.

    Ihr neuer SQL Server-Komponententest ist in der Dropdownliste in der Navigationsleiste verfügbar. Sie wird auch als neue Testmethode in der Testklasse hinzugefügt. Um die Testmethode im Code anzuzeigen, wählen Sie die Klassendatei aus, klicken Sie mit der rechten Maustaste, und wählen Sie "Code anzeigen" aus. Der Name der aktuellen Testklassendatei wird oben im SQL Server Unit Test Designer auf der Registerkarte angezeigt.

Nachdem Sie das Testprojekt konfiguriert und den Komponententest erstellt haben, sind die nächsten Schritte:

  • Fügen Sie ein Transact-SQL Testskript hinzu.
  • Definieren Sie Vor-Test-Aktionen und Nach-Test-Aktionen.
  • Fügen Sie Testbedingungen oder eine andere Assert-Anweisung hinzu, um die Skriptergebnisse zu überprüfen.

Hinweis

Die inkonslusive Testbedingung ist die Standardbedingung, die jedem Test hinzugefügt wird. Diese Testbedingung ist enthalten, um anzugeben, dass die Testüberprüfung nicht implementiert wurde. Löschen Sie diese Testbedingung aus Ihrem Test, nachdem Sie andere Testbedingungen hinzugefügt haben. Weitere Informationen finden Sie unter So fügen Sie Testbedingungen zu Datenbank-Unit-Tests hinzu.