заменить Console.WriteLine в NUnit? - PullRequest
36 голосов
/ 26 июля 2011

с NUnit раньше ничего не делал, а просто хотел вывести некоторый текст в окно в виде консоли.

e.g. Console.WriteLine("... some information...");  

это не сработает, конечно, потому что NUnit управляет вещами.

Я нахожусь в процессе создания некоторых модульных тестов и хочу вывести список значений переменных для проверки во время отладки. Я признаю, что это не совсем модульный тест, если мне нужно это сделать, но это было бы удобно.

Ответы [ 5 ]

42 голосов
/ 26 июля 2011

Вы можете увидеть вывод консоли, вам просто нужно выбрать вкладку «Вывод текста» в средстве запуска NUnit GUI.

enter image description here

Обновление

Если вы используете тестер ReSharper, должен отображаться вывод консоли. Убедитесь, что окно вывода бегуна тестов отображается, нажав кнопку «Показать вывод» на панели инструментов бегуна тестов:

enter image description here

Затем вы должны получить что-то следующее:

enter image description here

33 голосов
/ 26 июля 2011

Попробуйте использовать System.Diagnostics.Debug.WriteLine.

29 голосов
/ 03 августа 2017

В NUnite v3 вы также можете записать в вывод результатов теста для отладки с помощью

TestContext.Out.WriteLine("Message to write to log");
13 голосов
/ 17 ноября 2017

В Visual Studio 2017 в окне Test Explorer есть ссылка Output в нижней панели Test.Это вызывает все, что записывается на консоль во время этого модульного теста.

3 голосов
/ 07 марта 2019

Просто потратил полчаса, пытаясь найти представление Test-Output.Шаги:

  1. Открыть проводник тестов
  2. Выбрать любой конкретный тест
  3. Запустить его, если он никогда не был запущен.
  4. Нажмите вывод ссылка на панель результатов теста.

Нет необходимости заменять Console.WriteLine чем-либо, поскольку это представление регистрирует сообщения от:

Console.WriteLine

Trace.WriteLine

Debug.WriteLine

TestExplorer.Out.WriteLine

Надеюсь, кто-то найдет это полезным.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...