Подтвердить что ты не робот

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

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

4b9b3361

Ответ 1

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

Ответ 2

Переменная среды.

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

Ответ 3

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

Создайте файл, например example.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. Также App.config, App.Dev.config и т.д. - это только файлы конфигурации .net.

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

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