Profiling-tests in Visual Studio Community 2015
Beiträge auf der web schlagen vor, dass man Profil-tests in Visual Studio mit der rechten Maustaste und wählen "Profil Testen": http://adamprescott.net/2012/12/12/performance-profiling-for-unit-tests/ Aber ich sehe nur "Test" und "Debug-Test" für meine NUnit-tests, und das gleiche für xUnit.NET. Was bin ich um die Profil-tests? Ist dies einfach nicht unterstützt in der Community edition, oder bin ich etwas fehlt-Konfiguration oder-Komponente?
(Es scheint seltsam, wenn es nicht unterstützt wird, in der Gemeinschaft, da kann ich Profil ausführbaren Dateien in Gemeinschaft, und so könnte schmerzhaft dieses Problem umgehen, indem Sie eine ausführbare Datei erstellen, läuft der test, und ein Profil, das. Warum unterstützen profiling ausführbaren Dateien aber nicht-profiling-tests?)
Schritte zum reproduzieren dieses für NUnit: erstellt neue C# - Klassenbibliothek-Projekt in Visual Studio Community 2015, eingefügt Inhalt http://nunit.org/index.php?p=quickStartSource&r=2.6.4 in neue Datei, installiert NuGet-Pakete wie folgt:
<packages>
<package id="NUnit" version="2.6.4" targetFramework="net452" />
<package id="NUnit.Runners" version="2.6.4" targetFramework="net452" />
<package id="NUnitTestAdapter" version="2.0.0" targetFramework="net452" />
</packages>
Sogar Neustart von Visual Studio. Tests zeigen im Test-Explorer und ausgeführt werden können, aber kein "Profil Testen" - option zur Verfügung, die auf der rechten Maustaste-Menü. Habe auch versucht gleichwertige Schritte für xUnit.net, aber keine Freude.
- Scheint, wie es gibt keine definitiven Informationen. Meine beste Vermutung bleibt, dass in der Community edition können Sie ein Profil ausführbaren Dateien aber nicht Profil-tests direkt. Da meine tests sind in einer Bibliothek-Projekt, meine Arbeit herum, nur um eine ausführbare Datei, die läuft der test, dann das Profil, die ausführbare Datei statt. Ist machbar, nur ein wenig Runde-über...
- Siehe auch: Wie Profil Leistung für eine single-unit-Tests mit Visual Studio 2013 Professional?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sorry für die Antwort auf eine ältere Frage, aber ich dachte, ich könnte eine Verbesserung der aktuellen Antwort mit, wie ich war in der Lage zu Profil einen NUnit-test in VS-Gemeinde 2015 bereits heute.
Profilierung der NUnit-Test-Runner als ausführbare
Seite 3: Auf dieser Seite definieren Sie die ausführbare Datei ausgeführt wird.
Diese wird der test-runner -
nunit3-console.exe
für NUnit, oder was auch immer das äquivalent ist für Ihre test-framework.C:\Program Files (x86)\NUnit.org\nunit-console\nunit3-console.exe
bin\Debug\Test.dll --inprocess --test TestNamespace.TestClassName.Test_Method_Name
\\MAC\Home\Documents\GitHub\ApplicationName\Test
Müssen Sie ersetzen Sie diese Pfade durch diejenigen, die Sinn für Ihr system. Die
--inprocess
- Schalter bewirkt, dass die tests ausgeführt werden inline-aus dem NUnit-Prozess. Ohne dass der Schalter, ein Kind-Prozess erzeugt wird, und obwohl der profiler wird angezeigt, um zu arbeiten, werden Sie gerade profiling nunit3-console.exe, nicht mit Ihrem eigenen code.Seite 4: Klicken Sie Auf Finish.
Beachten Sie, dass der profiler generieren Bericht Dateien und speichern Sie Sie in Ihr Arbeitsverzeichnis. In meinem Fall, da mein Arbeits-Verzeichnis über eine UNC-Freigabe, es mir erforderlich, wählen Sie einen lokalen Ordnerpfad zum speichern der Berichte auf, bevor Sie den profiler starten würde.
Einem terminal-Fenster sollte erscheinen kurz mit dem NUnit runner-Ausgabe. Das Fenster automatisch schließt, also, wenn Sie sehen, eine flash-der rote text, Sie nicht Zeit haben, Lesen Sie die Fehler, bevor es Weg ist. Sie können kopieren Sie den Befehl von Seite 3 in einer Eingabeaufforderung für gemütliches Lesen.
Nachdem der Befehl ausgeführt wird (ob es erfolgreich war oder nicht), erhalten Sie einen Bericht, in dem Sie verfolgen können, wie viele Zuweisungen Ihrem test verursacht.
Leider Zuweisungen in einem kleinen test wahrscheinlich wird überschattet von den Zuweisungen, verursacht durch die NUnit.Rahmen selbst. Ich klickte um zu sehen, ob es einen Weg gibt, Sie zu verdrängen aus den Ergebnissen, aber nicht finden einen Weg, es zu tun, also habe ich Sie einfach ignoriert.
Wenn Sie möchten, um Profil zu einem anderen zu testen, öffnen Sie die Performance Explorer und mit der rechten Maustaste
nunit3-console.exe > Properties
ändern Sie die Befehl Linie Argumente und klicken Sie dann aufActions > Start Profiling
auf den Bericht aktualisieren.Abschluss
Diese Lösung ist erfolgreich bei der Profilierung der Ergebnisse einer einzigen NUnit-test, aber diese Aussage kommt mit einigen Einschränkungen.
War es nur geringfügig weniger widerlich als die Schaffung eines separaten ausführbaren Profil, und die Tatsache, dass der NUnit-Zuweisungen im Bericht angezeigt wird, könnte es einen nicht-starter, wenn Sie brauchen, um zu tun, einige wirklich empfindliche profiling.
Vielleicht jemand mit mehr VS 2015 Erfahrungen die mir helfen können, verbessern diese Antwort mit einigen Tipps ausschließen, die NUnit.Rahmen dll aus dem Bericht?
Die Antwort scheint zu sein, in einem Kommentar zu der Adam Prescott-Seite verwiesen, in der Frage:
Den link in der Kommentar-derzeit bezieht sich auf die 2015-edition von Visual Studio. Die Ausgabe 2010 der Seite deutlich zeigt, welche Versionen von Visual Studio 2010 unterstützt die Profilierung. Die Seiten für 2012 und höher version-weglassen eine klare Erklärung, welche Versionen unterstützen profiling.
Es ist möglich, Profil MSTest-tests (kann auch Profil nunit/xunit test mit Adapter) mit
vstest.console.exe
vstest.console.exe
(in der Regel lebt inC:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow
)<full path to test dll file>.dll /TestCaseFilter:"FullyQualifiedName~<namespace>.<test class>"
als Parameter/TestAdapterPath
argumentvstest.console.exe
Mehr info, wie Parameter an vstest.exe