Передать параметры через командную строку в NUnit

можно ли каким-то образом передавать значения в тесты NUnit через командную строку? Мои тесты используют определенный URL. У меня есть разные экземпляры моего кода в разных URL-адресах и я хотел бы указать URL-адрес через командную строку. Приложение.config не является опцией, потому что я хочу запустить тесты для разных URL-адресов через пакетный файл.

3 ответов


переменные среды.

использовать set из командной строки или <setenv> от nant. Затем прочитайте значение с помощью Environment.GetEnvironmentVariable().


на данный момент, похоже, нет решения. Лучшим вариантом является использование файлов проекта NUnit, изменение настроек и передача файла решения бегуну.


у меня был аналогичный вопрос, ответ Ахима поставил меня на правильный путь, для других читателей

создайте файл, как пример.нанит такой:

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

все файлы / пути (файлов конфигурации и сборки) относятся к расположению файла nunit. Также приложение.config, App.Разработка.конфигурации и т. д. просто .чистые файлы config.

далее, когда вы хотите запустить его для определенной конфигурации, вы выполняете его как это

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

подробнее о формате файла nunit https://github.com/nunit/docs/wiki/NUnit-Project-XML-Format

дополнительная информация о аргументах командной строки http://www.nunit.org/index.php?p=consoleCommandLine&r=2.2.5