2010-07-06 19 views
28

È in qualche modo possibile passare i valori ai test NUnit tramite la riga di comando? I miei test utilizzano un determinato URL. Ho diverse istanze del mio codice su URL diversi e vorrei specificare l'URL tramite la riga di comando. App.config non è un'opzione, perché voglio eseguire i test per URL diversi tramite un file batch.Passare i parametri tramite riga di comando a NUnit

+0

Hai provato a utilizzare Environment.GetCommandLineArgs? Ha funzionato? http://msdn.microsoft.com/en-us/library/system.environment.getcommandlineargs.aspx – Paddyslacker

risposta

2

Non sembra esserci alcuna soluzione al momento. La migliore opzione è quella di utilizzare i file di progetto NUnit, modificare le impostazioni lì e passare il file della soluzione al corridore.

26

Variabile di ambiente.

Utilizzare set dalla riga di comando o <setenv> da nant. Quindi leggere il valore utilizzando Environment.GetEnvironmentVariable().

0

avevo problema simile, la risposta di Achim mi ha messo sulla strada giusta, per gli altri lettori

Creare un file come example.nunit come questo:

<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> 

Tutto il file/i percorsi (dei file config e assembly) sono relativi alla posizione del file nunit. Anche App.config, App.Dev.config, ecc. Sono solo file di configurazione .net.

successivo 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

Maggiori informazioni su argomenti della riga di comando http://www.nunit.org/index.php?p=consoleCommandLine&r=2.2.5

+0

@Achim Hai provato il metodo sopra riportato aggiungendo configurazioni nel file nunit, ma genera un messaggio di errore - Impossibile trovare Fixture. \ nunit-console-x86.exe $ env_config/config: CI/run: $ feature $ dll_dir/result = $ result_dir – ReuseAutomator

+0

@Marteen Kieft Puoi aiutarmi con il problema precedente Sto affrontando – ReuseAutomator

+0

@ReuseAutomator: Sembra che sia qualcosa all'interno del tuo progetto e nulla di specifico per questa configurazione di configurazione. È possibile in realtà senza questa configurazione di configurazione eseguire direttamente i test eseguendo: nunit3-console.exe mytest.dll Si ottiene probabilmente lo stesso errore, quindi è possibile controllare: La classe di test ha un attributo testfixture su di esso Inizia la tua classe con Public (quindi public mytestclass {..} invece che solo class (senza pubblico). Se sei ancora di fronte, crea una domanda qui e indicami :) –

Problemi correlati