Passare parametri tramite riga di comando per NUnit
-
02-10-2019 - |
Domanda
E 'in qualche modo possibile passare i valori di test NUnit tramite linea di comando? I miei test utilizzano un determinato URL. Ho diverse istanze di mio codice a diversi URL e vorrei specificare l'URL tramite linea di comando. App.config non è un'opzione, perché voglio per eseguire i test per diversi URL tramite un file batch.
Soluzione 2
Sembra che ci sia alcuna soluzione al momento. L'opzione migliore è quella di utilizzare i file di progetto NUnit, modificare le impostazioni di lì e passare il file di soluzione per il corridore.
Altri suggerimenti
variabile di ambiente.
Usa set
dalla riga di comando o <setenv>
da Nant. Poi leggi il valore con Environment.GetEnvironmentVariable()
.
Avevo problema simile, la risposta di Achim mi ha messo sulla strada giusta, per gli altri lettori
Creare un file come example.nunit in questo modo:
<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>
Tutti i file / percorsi (di configurazione e di montaggio dei file) sono relativi alla posizione del file NUnit. Anche l'App.config, App.Dev.config, ecc, sono file di configurazione appena .net.
Avanti quando si Wanne esegue per un certo configurazione si esegue in questo modo
nunit3-console.exe example.nunit /config:test
Maggiori informazioni sul formato del file NUnit https: // github.com/nunit/docs/wiki/NUnit-Project-XML-Format
Più informazioni argomenti della riga di comando su http://www.nunit.org/index.php?p= consoleCommandLine & r = 2.2.5
NUnit3
consente ora i parametri di passaggio. Qui è l'utilizzo
nunit3-console [inputfiles] --params:Key=Value
- params | p = parametro
PARAMETRO testA specificato nella forma nome = valore per il consumo da prove. Più parametri possono essere specificato, separati da virgola o ripetendo l'opzione --params più volte. Maiuscole e minuscole.
Ecco come è possibile accedere al parametro attraverso codice:
var value= TestContext.Parameters.Get("Key", "DefaultValue");