Как установить консоль NUnit 3 в Windows и запустить тесты?

Я хочу запускать тесты с такой консоли (находясь в любом каталоге, DLL-файл может относиться к другой версии .NET):

$ nunit3-console test.dll

Я много гуглил, но не могу найти, как это настроить.

В официальном туториале нет ничего полезного и полный ноль. После этого я никуда не денусь: https://github.com/nunit/docs/wiki/Installation


person one_mile_run    schedule 03.08.2017    source источник
comment
В этом разделе, кажется, объясняется, как это сделать. четко?   -  person J. Steen    schedule 03.08.2017
comment
Загруженный zip не содержит nunit3-console.exe, есть только nunitlite-runner.exe.   -  person one_mile_run    schedule 03.08.2017
comment
Справедливо. Тогда им нужно обновить свою документацию. Вы всегда можете вернуться к выпуску, который все еще содержит nunit3-console, и загрузить его.   -  person J. Steen    schedule 03.08.2017
comment
Кажется, здесь довольно много голосов против. Я скажу, что нашел этот вопрос полезным, так как поиск в Google и чтение документов были непонятными.   -  person jmathew    schedule 06.12.2017


Ответы (4)


Его трудно найти, потому что существует много устаревшей документации либо для NUnit2, либо для NUnit3.

Шаги:

  1. Официальные установщики консоли NUnit3 находятся здесь: https://github.com/nunit/nunit-console/releases (путь отличается от документа)
  2. Загрузите пакет NUnit.Console-*.msi и установите
  3. Добавьте в системную PATH переменную: C:\Program Files (x86)\NUnit.org\nunit-console
  4. Открыть командную строку
  5. Тип:

    $ nunit3-console test.dll

// Для параллельного запуска нескольких тестовых сборок см. https://stackoverflow.com/a/45486444/1453525

person one_mile_run    schedule 03.08.2017
comment
Я получил msi и установил его, но в Program Files или Program Files x86 нет папки NUnit, знаете ли вы, где еще ее можно было установить? - person mickael; 19.09.2018
comment
@mickael: это путь установки по умолчанию. Попробуйте установить еще раз, но при выборе выборочной установки проверьте первый путь установки. - person one_mile_run; 19.09.2018
comment
Не забудьте запустить новую командную строку и т. Д., Чтобы выбрать новые переменные пути к среде. - person Mitchb; 18.11.2020

Я использую NUnit3-console.exe с Selenium WebDriver для запуска своей автоматизации, все это написано на C #. У меня есть несколько сред, настроенных под незаметным входом в Windows Server 2012.

NUnit-Console не нужно «устанавливать», хотя .msi легко доступен. Вместо этого я использую .zip и извлекаю файлы в каталог C: \ Nunit, вместо того, чтобы разрешить вызов из PATH. Все вызовы выполняются из планировщика Windows Forms в форме -

C:\Nunit\NUnit3-Console.exe -work:C:\Users\xxxx\Automation\TestResults\ -out:TestResult.xml --where "name =~ 'yyyy'" --p environment=qa;browser=Firefox;browserSizeX=1200;browserSizeY=800 "C:\QA_Libraries3\zzzz.dll"

Параметры теста передаются в командной строке, а результаты NUnit плюс результаты теста извлекаются из TestResult.xml, который индивидуален для каждого пользователя (среды).

person john rains    schedule 23.07.2018

Я понимаю, что эта тема немного устарела, но вот как я запускаю конкретный ЕДИНЫЙ тест.

  • установить nunit-console (https://github.com/nunit/nunit-console/releases/download/v3.10/NUnit.Console-3.10.0.msi)
  • Откройте окно PowerShell и запустите nunit3-console.exe с параметром «--test», установленным для ссылки на конкретный тест, который вы хотите запустить (включая пространство имен и класс). и, наконец, укажите расположение сборки, в которой можно найти тест.

Пример (пути необходимо скорректировать, чтобы они указывали на ваши конкретные файлы):

& "C:\Program Files (x86)\NUnit.org\nunit-console\nunit3-console.exe" --test=MyApp.Mvc.WebTests.CardsControllerTests.TheNameOfYourTestMethod "c:\src\MyApp.Mvc.WebTests\bin\Debug\MyApp.Mvc.WebTests.dll"

Надеюсь, это кому-то поможет.

person Dybrn    schedule 18.11.2019

Что я делаю и рекомендую, так это добавить пакет nuget NUnit.ConsoleRunner. Обратите внимание, что есть пакеты с одинаковыми названиями (NUnit.Runners, NUnit.Console), которые тоже могут работать, но я знаю, что NUnit.ConsoleRunner наверняка имеет в себе nunit3-console.exe ... ну, по крайней мере, версия пакета что я использую (3.4.1), делает :) К сожалению, управление версиями и упаковка nunit кажутся беспорядочными. Есть много старых документов и пакетов, которые, кажется, частично совпадают. И я не могу найти хорошие / надежные актуальные документы.

В любом случае, как только вы получите этот пакет, вы можете запустить exe, который теперь находится в каталоге пакетов. Для меня это пакеты \ NUnit.ConsoleRunner.3.4.1 \ tools \ nunit3-console.exe. Это хорошо работает для вызова из сценария автоматизации сборки, который находится в папке решения или знает, как найти папку решения.

Есть еще один вариант, который, хотя и не является прямым ответом на ваш вопрос, дает то, что, как я полагаю, является вашим желанием: запускать тесты nunit3 из командной строки. Если вы добавите пакет NUnit3TestAdapter, вы можете использовать встроенный в Visual Studio runner vstest. Если вы откроете командную строку разработчика (или PowerShell), ее можно будет запустить как vstest.console (без информации о пути, поскольку exe находится в пути env var). Конечно, у него есть собственный синтаксис команд, который нужно изучить.

person steve    schedule 06.08.2020