Freigeben über


Übersicht über Verbindungszeichenfolgen und Berechtigungen

Um Datenbankkomponententests auszuführen, müssen Sie eine Verbindung mit einem Datenbankserver herstellen, indem Sie eine oder zwei spezifische Verbindungszeichenfolgen verwenden. Jede Verbindungszeichenfolge stellt ein Konto mit den spezifischen Berechtigungen dar, die Sie benötigen, um im Rahmen des Tests die Aufgabe oder die Aufgaben eines bestimmten Skripts auszuführen. Sie können diese Zeichenfolgen im Dialogfeld Konfiguration des Projekts angeben oder indem Sie die Datei app.config für das Testprojekt manuell bearbeiten.

Verbindungszeichenfolgen

Im Dialogfeld Konfiguration des Projekts können Sie Verbindungszeichenfolgen für jedes der folgenden Konten angeben.

Tipp

Der Ausführungskontext und der privilegierte Kontext unterscheiden sich nur, wenn Sie die SQL Server-Authentifizierung verwenden. Bei Verwendung der Windows-Authentifizierung werden für beide Verbindungszeichenfolgen dieselben Anmeldeinformationen verwendet.

  • Ausführungskontext (erforderlich) – Ein Benutzerkonto zum Ausführen des Testskripts. Diese Verbindungszeichenfolge sollte dieselben Anmeldeinformationen aufweisen, die Sie bei den Benutzern erwarten. Dies ist wichtig, weil somit sichergestellt wird, dass die entsprechenden Berechtigungen auf die Datenbank angewendet wurden. Weitere Informationen finden Sie unter Gewusst wie: Konfigurieren der Ausführung von Datenbankkomponententests.

    In der Datei app.config für das Testprojekt ist dies das ExecutionContext-Element.

  • Privilegierter Kontext (optional) – Ein Konto mit höheren Berechtigungen zum Ausführen der Vortestaktion und Nachtestaktion sowie der Skripts TestInitialize und TestCleanup. Diese Skripte legen den Datenbankstatus fest und können für die Vortestaktion verwendet werden, um die Objekte in der Datenbank zu validieren. Diese Verbindungszeichenfolge wird auch verwendet, um Datenbankänderungen bereitzustellen und Daten zu generieren.

    In der Datei app.config für das Testprojekt ist dies das PrivilegedContext -Element. Wenn die Datenbankkomponententests nur das Testskript ausführen, müssen Sie keinen privilegierten Kontext angeben.

Die Zeichenfolgen, die Sie im Dialogfeld Konfiguration des Projekts angeben, werden in der Datei app.config für das Testprojekt gespeichert. Sie können diese Datei auch direkt bearbeiten und das Projekt neu erstellen. Anschließend werden die neuen Werte im Dialogfeld angezeigt.

Windows-Authentifizierung und SQL-Authentifizierung

Wenn Sie Verbindungszeichenfolgen angeben, müssen Sie sich zwischen der Verwendung der Windows-Authentifizierung und der SQL-Authentifizierung entscheiden. Ein Grund für die Auswahl der Windows-Authentifizierung besteht darin, dass sie die Verwendung von Tests durch ein Team besser unterstützt als die SQL-Authentifizierung. Wenn Sie die SQL-Authentifizierung auswählen, werden die Verbindungszeichenfolgen mit der Data Protection API (DPAPI) auf Grundlage Ihrer Benutzeranmeldeinformationen verschlüsselt. Dies bedeutet, dass Tests in diesem Testprojekt nur für Sie, nicht jedoch für Teammitglieder ausgeführt werden. Diese rufen die Tests über das Quellcodeverwaltungssystem ab, nachdem Sie diese eingecheckt haben. Wenn andere Teammitglieder Tests in diesem Testprojekt ausführen möchten, müssen sie das Testprojekt mit eigenen Anmeldeinformationen neu konfigurieren. Hierzu müssten sie ihr Exemplar der Datei app.config bearbeiten oder das Dialogfeld Konfiguration des Projekts verwenden.

Berechtigungen

Das Testskript wird auf der Berechtigungsebene für den Ausführungskontext ausgeführt. Dies ist dieselbe Berechtigungsebene, die für Benutzerbefehle gilt, die bei einer typischen Verwendung für die Datenbank ausgeführt werden. Die Vortestaktion und die Nachtestaktion sowie die Skripts TestInitialize und TestCleanup werden auf der Berechtigungsebene für den privilegierten Kontext ausgeführt.

Aufgrund der für das Nachtestaktions-Skript verwendeten Verbindung mit höherer Berechtigung können Sie eine Validierung ausführen. In diesem Skript können Sie auch Skriptbefehle ausführen, die Berechtigungen testen. Weitere Informationen über Berechtigungen finden Sie im Abschnitt über Datenbankkomponententests unter Erforderliche Berechtigungen für Datenbankfunktionen von Visual Studio.

Siehe auch

Konzepte

Skripts in Datenbankkomponententests

Dateien von Datenbankkomponententests