VSTest.Console при запуске с /Logger:Console не печатает вывод отладки из метода тестирования

Я использую Visual Studio 2015. Я пытаюсь распечатать некоторые операторы только для отслеживания очень долгого теста. При использовании VSTest.Console с /Logger:trx вывод отладки (независимо от того, используем ли мы Console.WriteLine(), Debug.Writeline() или Trace.WriteLine()) попадает в сгенерированный файл trx. Однако при запуске с /Logger:Console настраиваемый вывод отладки не отображается на выводе консоли: отображается только результат теста. Я даже написал собственное расширение, ссылаясь на:

https://blogs.msdn.microsoft.com/vikramagrawal/2012/07/26/writing-loggers-for-command-line-test-runner-vstest-console-exe/

Однако неясно, как отправить TestMessage изнутри теста, чтобы вызывался TestMessageHandler и печатались выходные данные.

Я думаю, что расширение может быть здесь избыточным, и я могу использовать консольный регистратор, который входит в состав расширений Visual Studio. Возможно, мне нужно сделать определенный вызов для отправки информационного сообщения или использовать соответствующий переключатель командной строки.

Сейчас я использую следующую команду:

Vstest.Console.exe <Test dll> /logger:Console

Тест выполняется, но выдает только следующие выходные данные:

Начинается выполнение теста, пожалуйста, подождите... Пройдено TestMethod1

Всего тестов: 1. Пройдено: 1. Не пройдено: 0. Пропущено: 0. Выполнение теста успешно. Время выполнения теста: 3,3929 секунды

Принимая во внимание, что файл trx имеет следующие разделы в разделе вывода, которые включают выходные данные console.writeline() и debug.trace(): (Текст, показанный ниже, приведен только для примера)

<Output>
    <StdOut>
    Test Started
    Test Ended
    Debug Trace:
    Test started
    Test ended
    </StdOut>
</Output>

Мне интересно, можно ли также отображать ту же информацию при использовании регистратора консоли.


person shivesh suman    schedule 26.06.2017    source источник


Ответы (1)


Поведение теперь изменено в VS 2017 15.5.2+, теперь он выдает вывод.

person Matt Kerr    schedule 20.12.2017
comment
Большой! Я проверю это, когда у меня будет шанс. Спасибо! - person shivesh suman; 21.12.2017
comment
он работает только для неудачных тестов, в пройденных тестах он по-прежнему не показывает отладочные сообщения - person Mohamed Ali; 05.08.2018