2010-07-06 17 views
28

Czy w jakiś sposób można przekazać wartości do testów NUnit za pośrednictwem wiersza poleceń? Moje testy używają określonego adresu URL. Mam różne wystąpienia mojego kodu pod różnymi adresami URL i chciałbym podać URL za pomocą wiersza poleceń. App.config nie jest opcją, ponieważ chcę uruchomić testy dla różnych adresów URL za pomocą pliku wsadowego.Przekazywanie parametrów za pomocą wiersza poleceń do NUnit

+0

Czy próbowałeś używać Environment.GetCommandLineArgs? Czy to działa? http://msdn.microsoft.com/en-us/library/system.environment.getcommandlineargs.aspx – Paddyslacker

Odpowiedz

2

Wygląda na to, że obecnie nie ma rozwiązania. Najlepiej jest użyć plików projektu NUnit, zmodyfikować tam ustawienia i przekazać plik rozwiązania do runnera.

26

Zmienna środowiskowa.

Użyj set z wiersza poleceń lub <setenv> z nant. Następnie odczytaj wartość za pomocą Environment.GetEnvironmentVariable().

0

miałem podobny problem, odpowiedź Achim umieścić mnie na właściwe tory, dla innych czytelników

Utwórz plik jak example.nunit takiego:

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

cały plik/ścieżki (plików konfiguracyjnych i zespołów) są zależne od lokalizacji pliku Niki. Również App.config, App.Dev.config, itp. Są po prostu plikami konfiguracyjnymi .net.

Następny gdy Wanne uruchomić go przez pewien config ją wykonać jak to

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

Więcej informacji na temat formatu pliku nunit https://github.com/nunit/docs/wiki/NUnit-Project-XML-Format

Więcej informacji o argumentach linii poleceń http://www.nunit.org/index.php?p=consoleCommandLine&r=2.2.5

+0

@Achim Próbował wykonać powyższą metodę, dodając configs w pliku Nunit, ale wyświetla komunikat o błędzie - Nie można zlokalizować Urządzenia. \ nunit-console-x86.exe $ env_config/config: CI/run: $ feature $ dll_dir/result = $ result_dir – ReuseAutomator

+0

@Marteen Kieft Czy możesz mi pomóc w powyższym wydaniu Mam do czynienia z – ReuseAutomator

+0

@ReuseAutomator: Wydaje się, że to coś wewnątrz twojego projektu i nic konkretnego dla tej konfiguracji konfiguracji. W rzeczywistości bez tej konfiguracji konfiguracji można bezpośrednio uruchomić testy, wykonując: nunit3-console.exe mytest.dll Prawdopodobnie otrzymujesz ten sam błąd, więc możesz sprawdzić: Czy twoja klasa testowa ma atrybut atrybutu testowego na nim Rozpocznij swoją klasę z Publiczną (tak publiczna mytestclass {..} zamiast tylko z klasą (bez publiczności) .Jeśli nadal masz do czynienia, stwórz pytanie tutaj i wskaż mi to :) –