2017-06-29 4 views
0

Wenn ich meine Unit-Tests mit NUnit des nunit3-Konsole CLI-Dienstprogramm ausführen, bin ich in der Lage Parameter zu übergeben, den "params" Flagge wie so mit:Pass Parameter in Visual Studio 2017 wie nunit-Konsole params cli

>nunit3-console --params:testKey=test203 TestClass.dll 

Debuggen in VS ist wirklich nervig, weil ich die Flagge "--debug" einstellen muss, ich muss dann an den Prozess von Visual Studio anhängen. Meine Frage ist, ob es möglich ist, den gleichen Parameter irgendwie an meine Unit-Tests zu übergeben, die nur Visual Studio verwenden?

Der Grund, warum ich Params auf diese Weise übergeben muss, ist, weil ich es in meinen Setup-Methoden brauche und Nunit erlaubt mir nicht, es dynamisch zu ändern, indem ich eine Variable verwende.

+0

Wir unterstützen das derzeit nicht im Visual Studio-Adapter. Leider sind wir durch die Benutzeroberfläche von Visual Studio eingeschränkt. Könnten Sie Ihre Setup-Methoden so umstellen, dass zuerst nach den Parametern gesucht wird, und wenn sie nicht vorhanden sind, nach Umgebungsvariablen suchen? Sie können die Umgebungsvariablen vor dem Starten von VS festlegen. –

+0

Sie könnten auch Konfigurationsdateien für Ihre Tests einlesen, wenn Sie nicht mit Env-Variablen herumhantieren wollen. –

+0

@RobProuse Vielen Dank dafür, irgendwelche Pläne, dies in VS irgendwann zu unterstützen? Angenommen, VS erlaubt. Ich werde sowohl Umgebungsvariablen als auch Konfigurationsdateien versuchen, um zu sehen, ob einer von diesen funktioniert, für die Zwecke meines Testens von Konfigurationsdateien könnte meine beste Option sein. –

Antwort

2

Sie geben die Laufparameter in Ihrer .runsettings Datei an. Hier sehen Sie, wie eine Beispieldatei ohne andere Einstellungen aussehen würde ...

<?xml version="1.0" encoding="utf-8"?> 
<RunSettings> 

    <TestRunParameters> 
    <Parameter name="webAppUrl" value="http://localhost" /> 
    <Parameter name="webAppUserName" value="Admin" /> 
    <Parameter name="webAppPassword" value="Password" /> 
    </TestRunParameters> 

</RunSettings> 
+0

Schön, ich habe nicht bemerkt, dass Sie Parameter hinzugefügt haben, um die Einstellungen zu steuern. Ich dachte, es wäre nur eine Befehlszeile –