Sdílet prostřednictvím


Gewusst wie: Ausführen von Datenbankkomponententests über Team Foundation Build

Aktualisiert: November 2007

Mit Team Foundation Build können Sie Datenbankkomponententests im Rahmen eines Buildüberprüfungstests (Build Verification Test, BVT) ausführen. Sie können die Datenbankkomponententests so konfigurieren, dass sie die Datenbank bereitstellen, Testdaten generieren und dann ausgewählte Tests ausführen. Wenn Sie nicht mit Team Foundation Build vertraut sind, lesen Sie die folgenden Informationen, bevor Sie die Vorgehensweisen in diesem Thema ausführen:

Bevor Sie diese Vorgehensweisen verwenden, müssen Sie zunächst Ihre Arbeitsumgebung konfigurieren, indem Sie die folgenden Aufgaben ausführen:

  • Installieren Sie Team Foundation Build und Team Foundation-Versionskontrolle, entweder als Einzelprodukte oder als Teil von Visual Studio Team System. Sie müssen wahrscheinlich Team Foundation Build und Team Foundation-Versionskontrolle auf unterschiedlichen Computern installieren.

  • Installieren Sie Team Explorer auf dem Clientcomputer.

  • Stellen Sie eine Verbindung zwischen einer Visual Studio-Benutzersitzung und einem Computer her, auf dem Team Foundation Server ausgeführt wird. Weitere Informationen über das Herstellen einer Verbindung mit Team Foundation Server finden Sie unter Gewusst wie: Herstellen einer Verbindung mit Team Foundation Server.

Nachdem Sie die Arbeitsumgebung konfiguriert haben, müssen Sie in Visual Studio Team System Database Edition die folgenden Schritte ausführen:  

  1. Erstellen Sie ein Datenbankprojekt.

  2. Importieren oder erstellen Sie das Schema und die Objekte für das Datenbankprojekt.

  3. Konfigurieren Sie die Eigenschaften des Datenbankprojekts für Erstellung und Bereitstellung.

  4. Erstellen Sie einen oder mehrere Datenbankkomponententests.

  5. Fügen Sie der Versionskontrolle die Projektmappe hinzu, die das Datenbankprojekt und das Datenbankkomponententest-Projekt enthält, und checken Sie alle Dateien ein.

Mit den Vorgehensweisen in diesem Thema wird beschrieben, wie eine Builddefinition zum Ausführen der Datenbankkomponententests im Rahmen eines automatischen Testlaufs erstellt wird:

  1. Erstellen Sie eine Testliste der Datenbankkomponententests, die Sie ausführen möchten.

  2. Checken Sie die Testliste ein.

  3. Erstellen Sie eine Builddefinition mit der Angabe, dass die Testliste als Teil des Builds ausgeführt werden soll.

  4. Ändern Sie die Builddefinition, um die Datei app.config an den ordnungsgemäßen Speicherort für Team Foundation Build zu kopieren.

  5. Checken Sie die aktualisierte Builddefinition ein.

  6. Führen Sie die neue Builddefinition aus.

Ausführen von Datenbankkomponententests auf einem Buildcomputer

Wenn Sie Datenbankkomponententests auf einem Buildcomputer ausführen, werden während der Komponententests möglicherweise nicht die Datenbankprojektdateien (.dbproj) oder die Datengenerierungspläne (.dgen) gefunden. Dieses Problem tritt auf, da die Datei app.config mit relativen Pfaden auf diese Dateien verweist. Darüber hinaus schlagen die Datenbankkomponententests fehl, wenn die zum Ausführen der Datenbankkomponententests gewünschte Instanz von SQL Server nicht gefunden wird. Dieses Problem kann auftreten, wenn die Verbindungszeichenfolgen, die in der Datei app.config gespeichert sind, auf dem Buildcomputer nicht gültig sind.

Um diese Probleme zu beheben, müssen Sie eine Datei app.config für die Verwendung mit Team Foundation Build erstellen. In diesem Beispiel hat die Datei den Namen app.TeamBuild.config. In dieser Datei müssen Sie die korrekten Pfade und Verbindungszeichenfolgen für die Ausführung von Team Foundation Build auf dem Buildcomputer angeben. Sie können auch ein Postbuildziel verwenden, um diese Datei in AssemblyName.config zu kopieren. Nachdem die Datei kopiert wurde, überschreiben Sie die .config-Datei, die die Werte enthält, die beim Ausführen der Komponententests durch die Entwickler auf ihren lokalen Entwicklungscomputern verwendet werden.

Aa833210.alert_note(de-de,VS.90).gifHinweis:

Bevor Sie ein Datenbankprojekt erstellen können, müssen Sie die Instanz der Datenbank für die Entwurfszeitvalidierung für das Dienstkonto auf dem Computer konfigurieren, auf dem Sie Team Foundation Build ausführen. Sie können die Instanz konfigurieren, indem Sie auf dem Buildcomputer Visual Studio als Dienstkonto ausführen. Alternativ können Sie auch mit der folgenden Befehlszeile den erforderlichen Registrierungseintrag erstellen. Dabei müssen Sie die Platzhalter mit den entsprechenden Namen für die Konfiguration ersetzen.

Runas /user:[DOMAIN\BuildServiceUserName] "REG ADD HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\DBPro\DialogPage\Microsoft.VisualStudio.TeamSystem.Data.DBProject.Settings.DataConnectionOptionsSettings /v SqlServerName /d [LocalInstanceName]"

Erstellen einer Testliste

So erstellen Sie eine Testliste von Datenbankkomponententests

  1. Klicken Sie im Fenster Testlisten-Editor in der Liste Gruppieren nach auf Vollständiger Name der Testliste, um den Testlistenbereich anzuzeigen.

  2. Klicken Sie mit der rechten Maustaste auf Testlisten und anschließend auf Neue Testliste.

    Das Dialogfeld Neue Testliste erstellen wird angezeigt.

  3. Geben Sie den Namen der Testliste ein, die die Datenbankkomponententests enthalten soll. (Geben Sie beispielsweise Datenbankkomponententests ein.)

  4. (Optional) Geben Sie eine Beschreibung der Datenbankkomponententestliste ein, und geben Sie eine Position der neuen Testliste in der Testlistenhierarchie an.

  5. Klicken Sie auf OK.

    Die Testliste wird erstellt und im Testlistenhierarchiebereich angezeigt.

  6. Klicken Sie auf Alle geladenen Tests, um alle in der Projektmappe enthaltenen Tests anzuzeigen.

  7. Ziehen Sie die Tests, die Sie als Datenbankkomponententests ausführen möchten, in die Testliste, die Sie gerade erstellt haben.

    Aa833210.alert_note(de-de,VS.90).gifHinweis:

    Um mehrere Tests gleichzeitig in die Liste zu ziehen, halten Sie die STRG-Taste gedrückt, während Sie auf die einzelnen Tests klicken. Um einen zusammenhängenden Block von Tests zu ziehen, klicken Sie auf den ersten Test im Block, und halten Sie dann die UMSCHALTTASTE gedrückt, während Sie auf den letzten Test im Block klicken. Verwenden Sie für diesen Zweck nicht die Kontrollkästchen.

  8. (Optional) Klicken Sie zum Überprüfen des Inhalts der Testliste in den Testlistenhierarchiebereich.

    Die gerade erstellte Testliste befindet sich zusammen mit allen Testlisten der Projektmappe in der Testmetadatendatei der Projektmappe. Testmetadatendateien haben die Erweiterung .vsmdi. Weitere Informationen finden Sie unter Verwenden von Testlisten.

Checken Sie die Testliste ein.

In diesem Verfahren werden alle Dateien der Projektmappe eingecheckt. Zu diesen Dateien zählt auch die Testmetadatendatei der Projektmappe, die die Testlisten und Tests enthält. Bei jedem Hinzufügen, Löschen, Umordnen oder Ändern des Inhalts von Testlisten wird die Testmetadatendatei automatisch aktualisiert.

Aa833210.alert_note(de-de,VS.90).gifHinweis:

In dieser Vorgehensweise werden die Schritte bei Verwendung von Team Foundation-Versionskontrolle beschrieben. Wenn Sie eine andere Versionskontrollsoftware verwenden, müssen Sie die entsprechenden Schritte für diese Software ausführen.

So checken Sie die Testliste ein

  1. Stellen Sie eine Verbindung mit einem Computer her, auf dem Visual Studio Team System Team Foundation Server ausgeführt wird. Weitere Informationen finden Sie unter Gewusst wie: Herstellen einer Verbindung mit Team Foundation Server.

  2. Wenn sich die Projektmappe noch nicht in der Quellcodeverwaltung befindet, fügen Sie sie hinzu. Weitere Informationen finden Sie unter Gewusst wie: Hinzufügen eines Projekts oder einer Projektmappe zur Versionskontrolle.

  3. Klicken Sie auf Ansicht und anschließend auf Anstehende Eincheckvorgänge, um das Fenster Anstehende Eincheckvorgänge anzuzeigen.

  4. Checken Sie alle Dateien der Projektmappe ein. Weitere Informationen finden Sie unter Gewusst wie: Einchecken von ausstehenden Änderungen.

    Aa833210.alert_note(de-de,VS.90).gifHinweis:

    Wenn Sie Visual Studio Team System verwenden, verfügen Sie möglicherweise über einen speziellen Teamprozess, der die Erstellung und Verwaltung von automatisierten Tests bestimmt. Der Prozess kann beispielsweise erfordern, dass das Build lokal überprüft wird, bevor dieser Code zusammen mit den Tests eingecheckt wird, die darauf ausgeführt werden sollen.

    Nach Abschluss des Eincheckvorgangs wird neben jeder Datei im Projektmappen-Explorer ein Vorhängeschlosssymbol angezeigt, um anzugeben, dass die Datei eingecheckt ist.

    Die eingecheckten Tests sind für das Team Foundation Build-Feature von Visual Studio Team System verfügbar. Sie können jetzt eine Builddefinition mit den Tests erstellen, die ausgeführt werden sollen.

Erstellen einer Builddefinition

So erstellen Sie eine Builddefinition

  1. Klicken Sie in Team Explorer auf das Teamprojekt.

  2. Klicken Sie mit der rechten Maustaste auf Builds, und klicken Sie dann auf Neue Builddefinition.

    Das Dialogfeld Builddefinition wird angezeigt.

  3. Vervollständigen Sie die Abschnitte im Dialogfeld Builddefinition. Weitere Informationen finden Sie unter Gewusst wie: Erstellen einer Builddefinition.

    Aa833210.alert_caution(de-de,VS.90).gifWichtiger Hinweis:

    Team Foundation Build verwendet eine MSBuild-Projektdatei. In den MSBuild-Projektoptionen müssen Sie das Kontrollkästchen Test ausführen aktivieren und die Testmetadatendatei angeben, die die Testliste enthält, die Sie in Erstellen einer Testliste erstellt haben. Schließlich müssen Sie die Testliste angeben, die die auszuführenden Tests enthält.

  4. Wenn Sie im Assistenten alle Informationen angegeben haben, klicken Sie auf Fertig stellen.

    Die neue Builddefinition wird im Team Explorer-Fenster im Ordner Builds angezeigt.

Ändern des Testprojekts

Standardmäßig erstellt Team Foundation Build beim Erstellen des Komponententestprojekts eine Konfigurationsdatei aus der Projektdatei app.config. Die Pfade des Datengenerierungsplans und des Datenbankprojekts werden in der Datei app.config als relative Pfade gespeichert. Die relativen Pfade, die in Visual Studio gültig sind, können nicht verwendet werden, da Team Foundation Build die erstellten Daten relativ zum Ausführungsort der Komponententests an unterschiedlichen Speicherorten ablegt, Darüber hinaus enthält die Datei app.config die Verbindungszeichenfolgen, die die Datenbank angeben, die Sie testen möchten. Sie benötigen zudem eine separate Datei app.config für Team Foundation Build, wenn die Komponententests eine Verbindung zu einer anderen Datenbank als jener, die beim Erstellen des Testprojekts verwendet wurde, herstellen sollen. Wenn Sie die Änderungen im nächsten Schritt vornehmen, können Sie das Testprojekt und den Buildserver so einrichten, dass Team Foundation Build eine andere Konfiguration verwendet.

Aa833210.alert_caution(de-de,VS.90).gifWichtiger Hinweis:

Sie müssen diese Schritte für jedes Testprojekt (.vbproj oder .vsproj) ausführen.

So verwenden Sie eine andere app.config-Datei für Team Foundation Build

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Testprojektdatei (.vbproj oder .csproj), die Sie ändern möchten. Klicken Sie dann auf Auschecken zum Bearbeiten.

    Das Dialogfeld Auschecken wird angezeigt.

  2. Klicken Sie auf Auschecken.

  3. Klicken Sie im Menü Datei auf Projektmappe schließen.

    Sie müssen die Projektmappe schließen, da Sie die Projektdatei nicht ändern können, solange die Projektmappe, die diese Projektdatei enthält, geöffnet ist.

    Aa833210.alert_note(de-de,VS.90).gifHinweis:

    Sie könnten das Projekt auch entladen und nach dem Ändern dann erneut laden.

  4. Zeigen Sie im Menü Datei auf Öffnen, und klicken Sie auf Datei.

  5. Navigieren Sie zu der Testprojektdatei aus Schritt 1, und doppelklicken Sie auf die Datei, um sie im Editor zu öffnen.

  6. Führen Sie einen Bildlauf zum Ende der Datei durch, und fügen Sie Folgendes nach dem Element ein, das mit "<Import Project=" beginnt und das die Visual Basic-Datei oder die Visual C# .Targets-Datei importiert:

    <Import Condition="'$(TeamBuildConstants)' != ''" Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v8.0\TeamData\Microsoft.VisualStudio.TeamSystem.Data.TeamBuild.targets"/>
    <Target Name="AfterBuild" DependsOnTargets="$(AfterBuildTeamBuildTargets)">
    </Target>
    
  7. Klicken Sie im Menü Datei auf FileNamespeichern.

  8. Navigieren Sie auf dem Computer, auf dem Sie Team Foundation Build ausführen, zum Ordner %ProgramFiles%\MSBuild\Microsoft\VisualStudio\v9.0\TeamData.

  9. Erstellen Sie in diesem Ordner eine Datei mit dem Namen Microsoft.VisualStudio.TeamSystem.Data.TeamBuild.Targets, die Folgendes enthält:

    <?xml version="1.0" encoding="utf-8"?>
    <Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup> 
    <AfterBuildTeamBuildTargets>RenameTeamBuildConfig</AfterBuildTeamBuildTargets>
    </PropertyGroup>
    <ItemGroup>
    <__TeamBuildConfig Include="$(OutDir)$(TargetFileName).config"/>
    </ItemGroup>
    
    <Target Name="RenameTeamBuildConfig">
    
    <CreateItem Include="app.TeamBuild.config">
    <Output ItemName="TeamBuildAppConfig" TaskParameter="Include" />
    </CreateItem>
    
    <Copy SourceFiles="@(TeamBuildAppConfig)" DestinationFiles="@(__TeamBuildConfig)" />
    </Target>
    
    </Project> 
    
    Aa833210.alert_note(de-de,VS.90).gifHinweis:

    Wenn Sie der Konfigurationsdatei einen anderen Namen als app.TeamBuild.config geben, müssen Sie den Namen in der XML-Datei ersetzen.

  10. Kopieren Sie die Datei app.config für das Testprojekt in eine Datei mit dem Namen app.teambuild.config.

  11. Passen Sie die Einstellungen für relative Pfade und Verbindungszeichenfolgen in der Datei app.teambuild.config so an, dass die Werte enthalten sind, die beim Ausführen der Datenbankkomponententests unter Team Foundation Build verwendet werden sollen.

Einchecken der aktualisierten Testprojekte

So checken Sie die aktualisierte Builddefinition ein

  • Wiederholen Sie die Schritte, die Sie in der Vorgehensweise So checken Sie die Testliste ein ausgeführt haben, um die Änderungen an der Testprojektdatei (.vbproj, .csproj) einzuchecken.

Ausführen des neuen Buildtyps

So führen Sie den neuen Buildtyp aus

  1. Klicken Sie im Menü Erstellen auf Build {Teamprojektname} zu Warteschlange hinzufügen.

    Das Dialogfeld {Teamprojektname} erstellen wird mit einer Liste aller vorhandenen Buildtypen angezeigt.

  2. Klicken Sie gegebenenfalls in Builddefinition auf die neue Builddefinition.

  3. Bestätigen Sie die Werte in den Feldern Builddefinition, Buildagent und Ablageordner für diesen Build, und klicken Sie dann auf Warteschlange.

    Die Registerkarte In Warteschlange gestellt von Build Explorer wird angezeigt. Weitere Informationen hierzu finden Sie unter Informationen zum Team Foundation Build Explorer.

Siehe auch

Aufgaben

Gewusst wie: Organisieren von Tests in Testlisten

Gewusst wie: Erstellen einer Builddefinition

Gewusst wie: Bereitstellen von Änderungen mit Team Foundation Build

Gewusst wie: Starten oder Hinzufügen einer Builddefinition zur Warteschlange

Konzepte

Übersicht über die Terminologie der Database Edition