При запуске `do tnet test` показывает вывод приемника` do tnet vstest` - PullRequest
4 голосов
/ 07 апреля 2020

Редактировать: Ниже приведен предыдущий вопрос, первоначально опубликованный с заголовком

xunit show Вывод ITestOutputHelper при запуске в консоли

После исследования (см. комментарии), вопрос по-прежнему очень актуален и нуждается в ответе, но, похоже, его следует адресовать структуре vstest и вокруг выходных приемников, а не xunit.

Спецификация c вопрос теперь заключается в следующем: когда что-то записывается в выходной приемник dotnet vstest, как я могу отобразить его при запуске dotnet test из командной строки. В частности, я хочу иметь возможность настроить наблюдатель с dotnet watch для непрерывного выполнения тестов, и я больше беспокоюсь о результатах, чем о результатах (я использую это меньше как систему тестирования и больше как ноутбук для разработки). И я не хочу ограничиваться визуальной студией или vscode.

Оригинальный вопрос:

В моем тестовом классе у меня есть

    [Fact]
    public void Test() {

       output.WriteLine("WHATEVER");

    }
    readonly ITestOutputHelper output;

    public GroceryTests(ITestOutputHelper output) => this.output = output;

Когда я запускаю это через интеграцию vscode в редакторе, я вижу результат на панели «Вывод». Когда я запускаю его через dotnet test, я этого не делаю. Как заставить этот вывод отображаться через консоль?

1 Ответ

3 голосов
/ 13 апреля 2020

Просто для того, чтобы поделиться тем, что сработало для меня (я не специалист по vstest, поэтому, вероятно, не могу отвечать на более глубокие вопросы):

У меня есть простой тест, подобный этому:

public class UnitTest1
{
    private readonly ITestOutputHelper _output;

    public UnitTest1(ITestOutputHelper output)
    {
        _output = output;
    }

    [Fact]
    public void Test1()
    {
        _output.WriteLine("My message.");
    }
}

Так что если я смотрю / запускаю этот тест в консоли :

dotnet watch test --logger:"console;verbosity=detailed"

Я вижу вывод:

  V XUnitTestProject1.UnitTest1.Test1 [5ms]
  Standard Output Messages:
 My message.

Я использую. NET Core SDK 3.1.201.

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