Unit-Tests

ReSharper bietet einen Unit-Test-Runner an, der Ihnen hilft, Unit-Tests basierend auf NUnit, xUnit.net, MSTest, QUnit und Jasmine auszuführen und zu debuggen. Sie können Tests erkunden, auf unterschiedliche Arten gruppieren und in einzelne Sessions aufteilen, Testprotokolle einsehen und von Stack-Traces aus zum Quellcode navigieren.

Mit ReSharper Ultimate können Sie außerdem Tests fortlaufend durchführen und die Testabdeckung und -leistung messen.

Unit-Tests ausführen und debuggen

ReSharper erkennt automatisch Unit-Tests der Frameworks NUnit, XUnit und MSTest in Ihren .NET- und .NET-Core-Projekten. Andere Unit-Test-Frameworks wie zum Beispiel MSpec werden über ReSharper-Plugins unterstützt.

Neben der Deklaration von Testklassen und einzelnen Tests fügt ReSharper spezielle Symbole hinzu, die Sie anklicken können, um Tests auszuführen oder zu debuggen. Alternativ können Sie Alt+Enter drücken, wenn sich Ihr Textcursor auf einer Testdeklaration befindet.

Tests können auch vom Kontextmenü aus ausgeführt werden. Außerdem können Sie beliebige Unit-Tests direkt im Solution Explorer von Visual Studio ausführen und debuggen. Wählen Sie einfach eine Datei, einen Ordner, ein Projekt oder eine Lösung aus und drücken Sie Strg+U, R oder Strg+U, D. Alternativ können Sie nach einem Rechtsklick auf die Auswahl Run unit tests oder Debug unit tests auswählen.

Unit-Test-Explorer in ReSharper

Unit-Test-Explorer

ReSharper zeigt im Unit-Test-Explorer eine strukturierte Liste von Unit-Tests, die Ihnen hilft, die Teststruktur Ihrer gesamten Lösung zu überprüfen. Die Baumstruktur ist über die Tastenkombination Strg+Alt+U oder über das Menü ReSharper | Windows verfügbar und wird schnell aufgefüllt, nachdem Sie einen Build Ihres Projekts erstellt haben. Wenn Sie den Unit-Test-Explorer verwenden, können Sie eine beliebige Kombination von Tests in einer oder mehreren Unit-Test-Sitzungen ausführen.

Integrierter Unit-Test-Runner

Unit-Test-Sitzungen

ReSharper führt Unit-Tests im Fenster Unit Test Sessions aus. In diesem Fenster können Sie eine beliebige Anzahl von Unit-Test-Sitzungen ausführen, und zwar unabhängig voneinander und simultan. Sitzungen können aus einer beliebigen Kombination von Tests bestehen. Im Debugmodus kann nur eine einzige Sitzung zur gleichen Zeit ausgeführt werden.

Die Unit-Test-Baumstruktur zeigt die Struktur der Tests an, die zu einer Sitzung gehören. Sie können diese filtern, um nur erfolgreiche, fehlgeschlagene oder ignorierte Unit-Tests anzuzeigen. Mit einem Doppelklick können Sie zum Code eines beliebigen Unit-Tests navigieren.

Die Fortschrittsleiste und die Statusleiste zeigen den aktuellen Fortschritt an. Sie können Unit-Tests jederzeit stoppen, ausführen oder neu erstellen und neu ausführen.

Im Vorschaufenster können Sie Testergebnisse analysieren und von der Ausgabe eines fehlgeschlagenen Tests mit einem einzigen Klick zu den Codezeilen navigieren, die die Ausnahme verursacht haben.

Code-Coverage mit dotCover analysieren

Code-Coverage mit dotCover analysieren

Mit dotCover von JetBrains (auch in der ReSharper-Ultimate-Lizenz enthalten) können Sie einfach ermitteln, zu welchem Anteil der Code Ihrer Lösung durch Unit-Tests abgedeckt ist.

Wenn Sie dotCover installieren, analysiert und visualisiert es die Code-Coverage von Unit-Tests im ausgewählten Bereich und weist auf Code hin, der nicht durch Unit-Tests abgedeckt wird. Dies kann sehr hilfreich für die Festlegung der richtigen Prioritäten in der Anwendungsentwicklung und Qualitätssicherung sein.

Fortlaufende Tests mit dotCover

Fortlaufende Tests mit dotCover

Wenn Sie ReSharper Ultimate oder dotCover verwenden, können Sie Continuous Testing (fortlaufende Tests) nutzen: einen modernen Workflow für Unit-Tests, durch den dotCover in Echtzeit die Unit-Tests ermittelt, die von Ihren neuesten Codeänderungen betroffen sind, und betroffene Tests automatisch erneut ausführt.

dotCover kann betroffene Tests beim Speichern einer Datei, beim Erstellen Ihrer Lösung oder auf Ihre explizite Anweisung hin erkennen und/oder ausführen.

Sie können fortlaufende Tests bei all Ihren Unit-Tests verwenden oder genau festlegen, welche Tests fortlaufend und welche auf herkömmliche Art und Weise ausgeführt werden sollen.

Profiling von Unit-Tests mit dotTrace

Mit JetBrains dotTrace können Sie auch die Leistung von Unit-Tests schnell und einfach von Visual Studio aus profilen. dotTrace ist ein mächtiges .NET-Profiling-Tool und ein Teil von ReSharper Ultimate.

Wenn Sie dotTrace installiert haben, können Sie das Profiling direkt vom Editor aus starten, indem Sie die Randleistenmarkierungen verwenden, die ReSharper für Testklassen und individuelle Tests hinzufügt.

Speicherauslastung mit dotMemory Unit überwachen

Um die Speicherauslastung direkt von Ihren Unit-Tests aus zu analysieren, verwenden Sie dotMemory Unit, ein kostenfreies Framework von JetBrains für Speicher-Unit-Tests.

Sobald Sie dotMemory Unit referenzieren, können Sie festlegen, dass Ihre Unit-Tests abhängig vom Arbeitsspeicher-Datenverkehr, der Anwesenheit spezieller Objekte im Speicher und anderen für die Speicherauslastung relevanten Faktoren bestehen oder fehlschlagen sollen.

Hinweis zu Tastenkombinationen

Alle auf dieser Seite angegebenen Tastenkürzel sind in der standardmäßigen "Visual Studio"-Tastaturbelegung von ReSharper verfügbar. Weitere Informationen zu den beiden Tastaturbelegungen von ReSharper finden Sie in der ReSharper-Dokumentation.