Freigeben über


Gewusst wie: Konfigurieren der Testbereitstellung

Tests werden vom Testmodul für Visual Studio Ultimate entweder in dem Ordner ausgeführt, in dem sie erstellt oder generiert wurden, oder in einem separaten Bereitstellungsordner. Wenn Sie die Tests in einem separaten Ordner bereitstellen, können Sie die Erstellung der Projektmappe fortsetzen, während die Tests ausgeführt werden.

Vor der Ausführung der Tests werden die folgenden Dateien und Ordner in den Bereitstellungsordner kopiert:

  • Die Testassembly

  • Alle abhängigen Assemblys

  • Von Ihnen angegebenen Dateien, z. B. XML-Dateien und Konfigurationsdateien, die für die Tests benötigt werden Die Bereitstellung kann durch die Angabe zusätzlicher zu kopierender Bereitstellungselemente und durch Ändern des Bereitstellungsordners konfiguriert werden.

Beim Bereitstellungsordner kann es sich um einen lokalen Ordner oder einen Remoteordner handeln. Tests werden remote bereitgestellt, wenn Sie mit Test-Agent-Controllern und Test-Agents arbeiten. Weitere Informationen zur Remotebereitstellung finden Sie unter Gewusst wie: Ausführen eines Test-Controllern und Test-Agents.

Beim Ausführen der Tests einer Projektmappe werden von Visual Studio Bereitstellungsdateien in einem Ordner namens "TestResults" innerhalb der Projektmappenhierarchie erstellt. Wenn der Ordner TestResults nicht vorhanden ist, wird er von Visual Studio erstellt.

Tipp

Wenn Sie die integrierte Entwicklungsumgebung von Visual Studio verwenden, wird dieser Ordner direkt im Projektmappenordner erstellt. Wenn Sie Visual Studio nicht verwenden, wird der Ordner TestResults im aktuellen Ordner erstellt.

Bei jedem Start eines Testlaufs erstellt Visual Studio unter dem Ordner "TestResults" einen Satz von Ordnern, der ausschließlich für diesen Testlauf verwendet wird. Im Beispiel in der folgenden Abbildung ist "<Benutzername>@<Computername><Datum> <Uhrzeit>" der erste Ordner unter "TestResults". Nach diesem Muster werden alle Ordner benannt.

Lokaler Bereitstellungsordner für Tests

Bereitstellungsordner für einen lokalen Testlauf

Wie in der vorherigen Abbildung gezeigt, enthält die Projektmappe "ClassLibrary1" zwei Projekte: "ClassLibary1" und "TestProject1". Da Tests ausgeführt wurden, enthält diese Projektmappe außerdem einen Ordner mit dem Namen TestResults. Der Ordner TestResults enthält eine Testergebnisdatei für jeden Testlauf. Die Testergebnisdatei hat die Erweiterung .trx.

Zusätzlich werden im Ordner TestResults die folgenden Ordner erstellt:

  • Testlaufordner. Unter TestResults befindet sich ein Ordner für jeden gestarteten Testlauf. Der Testlaufordner erhält den Namen des Testlaufs, der auch in den Fenstern Testergebnisse und Testläufe angezeigt wird. Das Standardformat für Testlaufnamen ist <Benutzername>@<Computername> <Datum> <Zeit>. Der Testlaufordner enthält weiterhin die vor und nach Testläufen ausgeführten Bereinigungsskripts.

  • Ordner Out und Unterordner. Jeder Testlaufordner enthält einen Ordner mit dem Namen Out. Der Ordner "Out" ist der eigentliche Bereitstellungsordner. Assemblys sowie andere für den Testlauf benötigte Dateien und Ordner werden bei jedem Start eines Testlaufs in den Ordner "<Projektmappe>\TestResults\<Testlauf>\Out" kopiert.

  • Ordner In und Unterordner. Jeder Testlaufordner enthält einen Ordner mit dem Namen "In". Bestimmte Testergebnisse werden im Ordner "In" oder einem Unterordner gespeichert. Beispielsweise werden Codeabdeckungsergebnisse in einer Datei mit dem Namen "data.coverage" in einem Unterordner namens <Testlauf-ID>\<Computer, auf dem die Tests ausgeführt wurden> gespeichert.

Festlegen von Bereitstellungsoptionen

Sie können die Testbereitstellung auf verschiedene Arten anpassen:

Auswählen von Bereitstellungselementen. Bei der lokalen Testbereitstellung kopiert das Testmodul die Bereitstellungselemente (sowohl Dateien als auch Ordner) vor dem Ausführen der Tests in einen Ordner auf dem Computer. Sie können die bereitzustellenden Dateien und Ordner zur Datei mit den Testeinstellungen hinzufügen. Weitere Informationen zu den hierfür erforderlichen Schritten finden Sie unter Erstellen von Testeinstellungen zum Ausführen von automatisierten Tests in Visual Studio oder Erstellen von Einstellungen für automatisierte Tests als Teil eines Testplans.

  • Informationen über die Reihenfolge, in der Bereitstellungselemente kopiert werden, finden Sie unter Bereitstellungsreihenfolge.

Auswählen von Bereitstellungselementen für einen einzelnen Test

Die folgenden Prozeduren gelten nur für eine Testmethode. Sie bestimmen, welche Dateien von Visual Studio Ultimate kopiert werden, bevor der spezielle Test ausgeführt wird.

So stellen Sie mithilfe der Bereitstellungselemente-Eigenschaft Elemente für einen einzelnen Test bereit

  1. Wählen Sie einen Test im Fenster Testansicht oder im Testlisten-Editor aus.

  2. Drücken Sie F4.

    Das Eigenschaftenfenster für diesen Test wird angezeigt.

  3. Klicken Sie auf die Eigenschaft Bereitstellungselemente.

    In der Wertspalte wird die Ellipse (…) angezeigt.

  4. Klicken Sie auf die Ellipse.

    Das Dialogfeld Zeichenfolgen-Editor wird angezeigt.

  5. Geben Sie vor dem Ausführen des Tests einen Pfad zu einem Ordner oder einer Datei an, die in den Bereitstellungsordner des Tests kopiert werden soll. Drücken Sie die EINGABETASTE, und geben Sie weitere Pfade ein, um zusätzliche Ordner und Dateien anzugeben, die bereitgestellt werden sollen.

    Tipp

    In Pfaden für Bereitstellungselemente können Umgebungsvariablen verwendet werden. Ein Beispiel finden Sie unter DeploymentItemAttribute.

  6. Klicken Sie auf OK.

    Die von Ihnen angegebenen Bereitstellungselemente werden zusätzlich zu den Elementen bereitgestellt, die in der für den Test verwendeten Testlaufkonfiguration festgelegt sind.

    Tipp

    Für Komponententests wird Code, in dem diese Bereitstellungselemente angegeben werden, in das DeploymentItem-Attribut im Quellcode des Tests geschrieben.

So stellen Sie mithilfe des DeploymentItem-Attributs Elemente für einen einzelnen Test bereit

  1. Öffnen Sie die Quellcodedatei, die einen Komponententest enthält.

  2. Fügen Sie unter dem TestMethod-Attribut ein DeploymentItem-Attribut hinzu.

  3. Geben Sie als Parameter für das DeploymentItem-Attribut den Ordner oder die Datei an, der bzw. die für diesen Test bereitgestellt werden soll. Sie können einen absoluten oder relativen Pfad angeben. Relative Pfade sind relativ zur RelativePathRoot-Einstellung in der Datei .testrunconfig.

    C#-Beispiel:

    [TestMethod]

    [DeploymentItem("MyTestProject\\testdatasource.mdb")]

    public void TestMethod1()

    {

    // TODO: Add test logic here

    }

    Visual Basic-Beispiel:

    <TestMethod()> _

    <DeploymentItem("MyTestProject\\testdatasource.mdb")> _

    Public Sub TestMethod1()

    ' TODO: Add test logic here

    End Sub

    Tipp

    Das DeploymentItem-Attribut kann nur für Testmethoden verwendet werden, nicht für Testklassen.

  4. Speichern und schließen Sie die Quellcodedatei des Komponententests.

    Die von Ihnen angegebenen Bereitstellungselemente werden beim Ausführen des Tests zusätzlich zu den Elementen bereitgestellt, die in der für den Test verwendeten Testlaufkonfiguration festgelegt sind.

Bereitstellungsreihenfolge

Bereitstellungselemente werden in einer bestimmten Reihenfolge kopiert. Später kopierte Bereitstellungselemente überschreiben zuvor kopierte Elemente mit demselben Namen. Beispielsweise werden in den Testeinstellungen angegebene Bereitstellungselemente später kopiert als für einen einzelnen Test angegebene Elemente.

Die folgende Liste ist absteigend nach Priorität geordnet. Das heißt, dass zuerst aufgeführte Elemente später aufgeführte Elemente überschreiben. Bestimmte Elemente in der nachstehenden Liste werden automatisch im Bereitstellungsordner bereitgestellt. Dazu gehören die Testassembly, instrumentierte Binärdateien und abhängige Assemblys.

  1. Die Datei bzw. die Dateien, aus denen der Test besteht. Hierzu gehören Testassemblys für Komponententests, Text- oder MHT-Dateien für manuelle Tests oder andere Dateitypen für andere Testtypen, z. B. generische Tests.

  2. Instrumentierte Binärdateien. Dies sind Binärdateien, die instrumentiert wurden, z. B. für die Codeabdeckung.

    Tipp

    Wenn Sie die direkte Instrumentation verwenden, werden Binärdateien zuerst instrumentiert und dann in den Bereitstellungsordner kopiert. Anderenfalls werden sie zuerst kopiert und danach instrumentiert. Direkte Instrumentation ist die Standardeinstellung für Tests, die lokal ausgeführt werden. Sie können diese Einstellung in den Testeinstellungen ändern.

  3. In den Testeinstellungen angegebene Elemente.

  4. Abhängigkeiten, z. B. Anwendungskonfigurationsdateien und abhängige Assemblys.

  5. Testspezifische Bereitstellungselemente. Dies schließt für die Testmethode angegebene Elemente ein.

Siehe auch

Referenz

DeploymentItemAttribute

Konzepte

Instrumentieren und erneutes Signieren von Assemblys

Weitere Ressourcen

Erstellen von Testeinstellungen zum Ausführen von automatisierten Tests in Visual Studio