Ausführen von Komponententests mit dem Test-Explorer

Visual Studio-Test-Explorer hilft Ihnen, Komponententests im Entwicklungsprozess zu integrieren.Sie können Tests aus mehreren Testprojekten in einer Projektmappe und von den Testklassen ausführen, die Teil der Produktionscodeprojekte sind.Testprojekte können verschiedene Komponententest-Frameworks verwenden.In diesem Thema erhalten Sie über die folgenden Themen erfahren:

In diesem Abschnitt

Komponententestframeworks und Testprojekte

Ausführen von Tests im Test-Explorer

  • Tests werden ausgeführt

  • Ausführen von Tests nach jedem Build

Betrachtungstestergebnisse

  • Anzeigen von Testdetails

  • Anzeigen des Quellcodes einer Testmethode

Die Testliste gruppieren und Filtern

  • Gruppieren der Testliste

  • Gruppieren von Features

  • Die Testliste suchen und Filtern

Testeinheitstests

Analysieren von Komponententestcodeabdeckung

Diagnose von Testmethodenperformanceproblemen

Externe Ressourcen

  • Empfehlungen

Komponententestframeworks und Testprojekte

Visual Studio enthält die Microsoft-Komponententestframeworks für verwalteten und systemeigenen Code für ein.kann jedoch Test-Explorer jedes Komponententestframework ausführen, das einen Test-Explorer-Adapter implementiert hat.Weitere Informationen zum Installieren von Komponententest-Frameworks von Drittanbietern, finden Sie unter Gewusst wie: Installieren von Frameworks für Komponententests von Drittanbietern

Test-Explorer kann Tests aus mehreren Testprojekten in einer Projektmappe und von den Testklassen ausführen, die Teil der Produktionscodeprojekte sind.Testprojekte können verschiedene Komponententest-Frameworks verwenden.Wenn der getesteten Code für das .NET-Framework geschrieben wird, kann das Testprojekt in jede .NET-Sprache, unabhängig von der Sprache des Zielcodes geschrieben werden.Systemeigene C/C++-Codeprojekte müssen getestet werden, indem Komponententestframework in C++ verwendet.

In diesem Abschnitt

Ausführen von Tests im Test-Explorer

Wenn Sie das Testprojekt erstellen, werden die Tests im Test-Explorer.Wenn Test-Explorer nicht sichtbar ist, wählen Sie Test auf dem Visual Studio-Menü aus, wählen Sie Fenster aus und wählen dann Test-Explorer aus.

Komponententest-Explorer

Wie Sie ausgeführt werden, schreiben Sie und überprüfen Sie die Tests, Test-Explorer-Anzeigen die Ergebnisse in den Standardgruppen von Fehlgeschlagene Tests, Bestandene Tests, Übersprungene Tests und Nicht ausgeführte Tests.Sie können ändern, wie Test-Explorer die Tests gruppiert.

Sie können einen Großteil der Arbeit zum Suchen, des zum Organisieren und der Ausführung von Tests in der Test-Explorer-Symbolleiste ausführen.

Tests von der Test-Explorer-Symbolleiste ausführen

Hh270865.collapse_all(de-de,VS.110).gifTests werden ausgeführt

Sie können alle Tests in der Projektmappe, alle Tests in einer Gruppe oder einen Satz von Tests, die Sie auswählen.Führen Sie eine der folgenden Schritte aus:

  • Um alle Tests in einer Projektmappe zu machen, wählen Sie Alle ausführen.

  • Um alle Tests in einer Standardgruppe zu machen, wählen Sie Ausführen... und dann die Gruppe im Menü aus.

  • Wählen Sie die einzelnen Tests, die Sie ausführen möchten, öffnen das Kontextmenü für einen ausgewählten Test auswählen und dann Ausgewählte Tests ausführen aus.

Die Erfolg/Fehlerleiste oben im Test-Explorer-Fensters wird als die Testausführung animiert.Am Ende des Testlaufs dreht die Erfolg/Fehlerleiste grün, wenn alle Tests erfolgreich waren oder gedreht wird den fehlgeschlagenen Test Rotwenn vorhanden.

Hh270865.collapse_all(de-de,VS.110).gifAusführen von Tests nach jedem Build

WarnhinweisVorsicht

Das Ausführen von Komponententests nach jedem Build wird nur in Visual Studio Ultimate unterstützt.

Nach Build ausführen

Um die Komponententests ausführen nach jedem lokale Build, Test im Standardmenü auswählen, wählen Sie Nach dem Buildvorgang Tests ausführen auf der Test-Explorer-Symbolleiste.

In diesem Abschnitt

Betrachtungstestergebnisse

Wie Sie ausgeführt werden, schreiben Sie und überprüfen Sie die Tests, Test-Explorer-Anzeigen die Ergebnisse in Gruppen von Fehlgeschlagene Tests, Bestandene Tests, Übersprungene Tests und Nicht ausgeführte Tests.Im Detailbereich unten im Test-Explorer zeigt eine Zusammenfassung des Testlaufs angezeigt.

Hh270865.collapse_all(de-de,VS.110).gifAnzeigen von Testdetails

Um die Details eines einzelnen Tests anzuzeigen, wählen Sie den Test aus.

Der Testdetailbereich zeigt die folgenden Informationen an:

  • Der Quelldateiname und die Zeilennummer der Testmethode.

  • Der Status des Tests.

  • Die Laufzeit, die die Testmethode der Ausführung des.

Wenn der Test fehlschlägt, die des Detailbereichs Anzeigen auch:

  • Die Meldung zurückgegeben durch das Komponententestframework für den Test.

  • Die Stapelüberwachung, als der Test fehlgeschlagen ist.

Hh270865.collapse_all(de-de,VS.110).gifAnzeigen des Quellcodes einer Testmethode

Um den Quellcode für eine Testmethode im Visual Studio-Editor anzuzeigen, wählen Sie den Test aus und wählen dann Test öffnen im Kontextmenü (Tastatur aus: F12).

In diesem Abschnitt

Die Testliste gruppieren und Filtern

Test-Explorer können Sie die Tests in vordefinierte Kategorien gruppieren.Die meisten Komponententest-Frameworks, die in Test-Explorer ausgeführt werden, können Sie eigene Kategorien und Kategorie/Wert-Paare definieren, um die Tests zu gruppieren.Sie können die Liste von Tests nach übereinstimmenden Zeichenfolgen für Testeigenschaften auch filtern.

Hh270865.collapse_all(de-de,VS.110).gifGruppieren der Testliste

Um die Methode zu ändern die Tests organisiert werden, wählen Sie den Pfeil nach unten neben der Schaltfläche Gruppenschaltfläche "Test-Explorer" und Gruppieren nach wählen Sie neue gruppierende Kriterien aus.

Test-Explorer-Gruppen

Gruppieren

Beschreibung

Dauer

Gruppen testen bis zur Ausführungszeit: Fast, Mittel und langsam.

Ergebnis

Gruppentests durch Ausführungsergebnisse: Fehlgeschlagene Tests, Übersprungene Tests, Bestandene Tests.

Features

Gruppen testen bycategory Attribut-Wert-Paare, die Sie definieren.Die Syntax, mit der von Merkmalskategorien und - anzugeben wird durch das Komponententestframework definiert.

Projekt

Gruppen testen mit dem Namen die Projekte.

Hh270865.collapse_all(de-de,VS.110).gifGruppieren von Features

Ein Merkmal ist normalerweise ein Kategorienname-wert-paar, kann jedoch eine einzelne Kategorie auch sein.Features können an Methoden zugewiesen werden, die als Testmethode durch das Komponententestframework identifiziert werden.Ein Komponententestframework kann Merkmalskategorien definieren.Sie können Werte den Merkmalskategorien hinzufügen, um eigene Kategorienname-wert-paare zu definieren.Die Syntax, mit der von Merkmalskategorien und - anzugeben wird durch das Komponententestframework definiert.

Im Microsoft-Komponententest-Framework für verwaltete App, definieren Sie ein Merkmalsname-wert-paar, indem Sie TestPropertyAttribute verwenden.Das Microsoft-Komponententest-Framework enthält auch diese vordefinierten Merkmale:

Merkmal

Beschreibung

[ T:Microsoft.VisualStudio.TestTools.UnitTesting.OwnerAttribute ]

Die Besitzerskategorie wird durch das Komponententestframework definiert und Sie anfordert, einen Zeichenfolgenwert des Besitzers bereitzustellen.

[ T:Microsoft.VisualStudio.TestTools.UnitTesting.PriorityAttribute ]

Die Prioritätskategorie wird durch das Komponententestframework definiert und Sie anfordert, einen ganzzahligen Wert der Priorität bereitzustellen.

[ T:Microsoft.VisualStudio.TestTools.UnitTesting.TestCategoryAttribute ]

Das TestCategory-Attribut ermöglicht es Ihnen, eine Kategorie ohne einen Wert bereitzustellen.Eine Kategorie, die vom TestCategory-Attribut definiert ist, kann die Kategorie eines TestProperty-Attributs auch sein.

[ T:Microsoft.VisualStudio.TestTools.UnitTesting.TestPropertyAttribute ]

Das TestProperty-Attribut ermöglicht es Ihnen, Merkmalskategorie/-Wert-Paar zu definieren.

Features im Microsoft-Komponententestframework für C++

Um ein Merkmal zu definieren, verwenden Sie das TEST_METHOD_ATTRIBUTE-Makro.Beispielsweise ein Merkmal benannte zu definieren TEST_MY_TRAIT:

#define TEST_MY_TRAIT(traitValue) TEST_METHOD_ATTRIBUTE(L"MyTrait", traitValue)

Um das definierte Merkmal in den Komponententests verwenden:

BEGIN_TEST_METHOD_ATTRIBUTE(Method1)
    TEST_OWNER(L"OwnerName")
    TEST_PRIORITY(1)
    TEST_MY_TRAIT(L"thisTraitValue")
END_TEST_METHOD_ATTRIBUTE()

TEST_METHOD(Method1)
{   
    Logger::WriteMessage("In Method1");
    Assert::AreEqual(0, 0);
}

C++-Merkmalsattributmakros

Makro

Beschreibung

TEST_METHOD_ATTRIBUTE(attributeName, attributeValue)

Verwenden Sie das TEST_METHOD_ATTRIBUTE-Makro, um ein Merkmal zu definieren.

TEST_OWNER(ownerAlias)

Verwenden Sie das vordefinierte Besitzersmerkmal, um einen Besitzer der Testmethode anzugeben.

TEST_PRIORITY(priority)

Verwenden Sie das vordefinierte Prioritätsmerkmal, um relative Prioritäten zu den Testmethoden zuzuweisen.

In diesem Abschnitt

Hh270865.collapse_all(de-de,VS.110).gifDie Testliste suchen und Filtern

Sie können Test-Explorer-Filter verwenden, um die Testmethoden in den Projekten einzuschränken, die Sie anzeigen und ausführen.

Wenn Sie eine Zeichenfolge im Test-Explorer-Suchenfeld eingeben und die EINGABETASTE drücken, wird die Testliste so gefiltert, dass nur die Tests anzuzeigen, deren vollqualifizierten Namen die Zeichenfolge enthalten.

Um nach verschiedenen Kriterien filtern:

  1. Öffnen Sie die Dropdownliste auf der rechten Seite des Suchenfelds.

  2. Wählen Sie neue Kriterien aus.

  3. Geben Sie den Filterwert zwischen den Anführungszeichen ein.

Suchfilterkategorien

HinweisHinweis

Suchen wird die Groß-/Kleinschreibung nicht beachtet und passen die angegebene Zeichenfolge mit einen Teil der Kriterien Wert an.

Qualifizierer

Beschreibung

Merkmal

Sucht Merkmalskategorie und der Wert für Übereinstimmungen.Die Syntax, mit der Merkmalskategorien anzugeben und die Werte werden durch das Komponententestframework definiert.

Projekt

Sucht die Testprojektnamen für Übereinstimmungen.

Fehlermeldung

Sucht die benutzerdefinierten Fehlermeldungen, die von fehlgeschlagenen Assertionen für Übereinstimmungen zurückgegeben werden.

Dateipfad

Sucht den vollqualifizierten Dateinamen aus Testquelldateien für Übereinstimmungen.

Der vollqualifizierte Name

Sucht den vollqualifizierten Dateinamen aus Testnamespaces, Klassen und Methoden für Übereinstimmungen.

Ausgabe

Sucht die benutzerdefinierten Fehlermeldungen, die an die Standardausgabe stdout () oder den Standardfehler (stderr) geschrieben werden.Die Syntax, mit der Ausgabemeldungen anzugeben werden durch das Komponententestframework definiert.

Ergebnis

Sucht die Test-Explorer-Kategoriennamen für Übereinstimmungen: Fehlgeschlagene Tests, Übersprungene Tests, Bestandene Tests.

In diesem Abschnitt

Testeinheitstests

Sie können Test-Explorer verwenden, um eine Debugsitzung für die Tests zu starten.Das schrittweise Ausführen von Code mit dem Visual Studio-Debugger gelangen Sie nahtlos hin und her zwischen den Komponententests und dem Projekt getesteten.So starten Sie das Debuggen:

  1. In Visual Studio-Editor legen Sie einen Haltepunkt in einer oder mehreren Testmethoden fest, die Sie debuggen möchten.

    HinweisHinweis

    Da Testmethoden in jeder beliebigen Reihenfolge ausgeführt werden können, legen Sie Haltepunkte in allen Testmethoden fest, die Sie debuggen möchten.

  2. im Test-Explorer wählen Sie die Testmethoden aus und wählen dann Ausgewählte Tests debuggen im Kontextmenü aus.

Weitere Informationen zu den Debugger, finden Sie unter Debuggen in Visual Studio.

In diesem Abschnitt

Analysieren von Komponententestcodeabdeckung

HinweisHinweis

Komponententestcodeabdeckung ist nur in Visual Studio Ultimate und Visual Studio Premium verfügbar.

Sie können die Menge des Produktcodes bestimmen, der tatsächlich durch die Komponententests getestet wird, indem das Visual Studio-Codeabdeckungstool verwendet.Sie können Codeabdeckung in ausgewählten Tests oder für alle Tests in einer Projektmappe aus.

So Codeabdeckung für Testmethoden in einer Projektmappe aus:

  1. Wählen Sie Tests auf dem Visual Studio-Menü aus und wählen dann Codeabdeckung analysieren aus.

  2. Wählen Sie einen der folgenden Befehle aus dem Untermenü aus:

    • Ausgewählte Tests führt die Testmethoden aus, die Sie im Test-Explorer ausgewählt haben.

    • Alle Tests führt alle Testmethoden in der Projektmappe aus.

Das Fenster zeigt den Prozentsatz der Blöcke des Produktcodes an, die von Zeile ausgeführt wurden, Namespace und Modul arbeiten, Klasse.

Weitere Informationen finden Sie unter Bestimmen des Umfangs des zu testenden Codes mithilfe von Codeabdeckung.

In diesem Abschnitt

Diagnose von Testmethodenperformanceproblemen

Um festzustellen warum eine Testmethode zu viel Zeit verwendet, wählen Sie die - Methode im Test-Explorer aus und wählen dann Profil im Kontextmenü aus.Siehe Analysieren der Anwendungsleistung mithilfe der Profilerstellungstools.

In diesem Abschnitt

Externe Ressourcen

Hh270865.collapse_all(de-de,VS.110).gifEmpfehlungen

Tests für fortlaufende Übermittlung mit Visual Studio 2012 - Chapter 2: Komponententest: Testen des Inneres

Siehe auch

Konzepte

Überprüfen von Code mithilfe von Komponententests

Gewusst wie: Ausführen eines Komponententest als 64-Bit-Prozess