Frage

Ist es irgendwie möglich, Werte zu NUnit Tests über die Kommandozeile zu übergeben? Meine Tests verwenden, um eine bestimmte URL. Ich habe verschiedene Instanzen meines Codes bei unterschiedlichen URLs und möchte die URL über Kommandozeile angeben. App.config ist keine Option, weil ich die Tests für verschiedene URLs über eine Batch-Datei ausgeführt werden soll.

War es hilfreich?

Lösung 2

Es scheint im Moment keine Lösung. Die beste Option ist NUnit-Projektdateien zu verwenden, ändern Sie die Einstellungen gibt und die Lösung Datei auf den Läufer übergeben.

Andere Tipps

Umgebungsvariable.

set Verwenden von der Kommandozeile oder <setenv> von Nant. Dann lesen Sie den Wert Environment.GetEnvironmentVariable() verwendet wird.

Ich hatte ähnliches Problem, die Antwort von Achim hat mich auf dem richtigen Weg, für andere Leser

Erstellen Sie eine Datei wie example.nunit wie folgt aus:

<NUnitProject>
  <Settings activeconfig="local"/>
  <Config name="local" configfile="App.config">
    <assembly path="bin\Debug\example.dll"/>
  </Config>
  <Config name="dev" configfile="App.Dev.config">
    <assembly path="bin\Debug\\example.dll"/>
  </Config>
  <Config name="test" configfile="App.Test.config">
    <assembly path="bin\Debug\\example.dll"/>
  </Config>
</NUnitProject>

Alle Datei / Pfade (der config und Baugruppendateien) sind in Bezug auf die Lage der nunit Datei. Auch die App.config, App.Dev.config usw. sind nur .net Konfigurationsdateien.

Als nächstes, wenn Sie es für eine bestimmte Konfiguration laufen WANNE Sie es wie folgt

execute
nunit3-console.exe example.nunit /config:test

Weitere Informationen über das Format der Datei nunit https: // github.com/nunit/docs/wiki/NUnit-Project-XML-Format

Weitere Informationen über Befehlszeilenargumente http://www.nunit.org/index.php?p= consoleCommandLine & r = 2.2.5

NUnit3 erlaubt nun Parameter. Hier ist die Verwendung

nunit3-console [inputfiles] --params:Key=Value

Von der Dokumentation

- params | p = Parameter

Ein Testparameter in Form Name = Wert für den Verzehr durch Tests festgelegt. Mehrere Parameter sein kann angegeben, die durch Semikolons getrennt sind oder durch Wiederholung der Option --params mehrmals. Case-sensitive.

Hier ist, wie Sie den Parameter durch den Code zugreifen können:

var value= TestContext.Parameters.Get("Key", "DefaultValue");
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top