Настройки запуска для тестов XUnit - PullRequest
1 голос
/ 13 марта 2019

На странице документации dotnet test указано, что аргументы могут передаваться в виде пар для модульных тестов.

Аргументы RunSettings

Аргументы передаются как конфигурации RunSettings для теста. аргументы указаны как [name]=[value] пар после "-" (обратите внимание на пробел после --). Пробел используется для разделения нескольких пар [name]=[value].

Я использую Xunit - Как мне прочитать эти пары ключ / значение в моем тестовом коде?

1 Ответ

0 голосов
/ 02 мая 2019

Я решил эту проблему с помощью класса Environment для прямого чтения параметров командной строки (примечание: неполное на момент написания):

public class Parameters
{
    public static string GetCommandLineArg(params string[] args)
        => Environment.GetCommandLineArgs().SkipWhile(x => !args.Contains(x, StringComparer.InvariantCultureIgnoreCase)).Skip(1).FirstOrDefault();

    public static string ResultsDirectory => GetCommandLineArg("-r", "--result-directory");
    public static string Logger => GetCommandLineArg("-l", "--logger");
}
...