Тест dotnet: как включить имя сборки в файлы результатов.trx?

Я запускаю тестовое решение со сборкой на сервере TFS. Я генерирую.trx файлы с помощью команды

dotnet test --logger:trx;

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

Я знаю, что могу указать полный путь и имя в командной строке с помощью LogFileName={FullPath}, но это не является динамическим, поскольку вы должны указать имя и работать только для уровня проекта, а не для полного решения (что имеет смысл, поскольку Вы не можете использовать один и тот же путь и имя для нескольких файлов результатов теста).

Есть ли способ динамически поместить имя проекта в файл trx через командную строку и / или в моем определении сборки TFS (возможно, с переменными)? Я еще ничего не нашел об этом.

Заранее спасибо!

0 ответов

Один из способов сделать это - запустить тесты через сценарий пирога.

foreach (var project in GetFiles($"../Tests/*/*.csproj"))
{
    var projectName = project.GetFilenameWithoutExtension();
    var dotNetTestSettings = new DotNetCoreTestSettings
    {
        Logger = $"trx;LogFileName={projectName}.trx",
        ResultsDirectory = "./TestResults",
    };
    DotNetCoreTest(project.FullPath, dotNetTestSettings);
}
Другие вопросы по тегам