У меня есть набор модульных тестов в проекте .NET Core и я использую файл настроек запуска. Я пытаюсь настроить Azure DevOps для автоматического тестирования моих развертываний. В рамках этого процесса мне нужно переопределить параметры из настроек запуска в командной строке.
У меня есть файл настроек запуска со следующим разделом:
У меня есть статический конструктор, который сохраняет TestContext следующим образом:
Код: Выделить всё
[ClassInitialize]
public static void TestClassInitialize(TestContext context)
{
TestContext = context;
}
Я получаю настройки из TestContext с помощью следующего метода:
Код: Выделить всё
protected string GetStringSetting(string settingName)
{
return TestContext.Properties[settingName] as string;
}
Когда я запускаю тест с выбранным файлом настроек запуска, он получает TestContext, и я вижу, что запись ApiUrl получена успешно.
Теперь я хотите установить этот параметр из командной строки. Я использую такую команду:
Код: Выделить всё
dotnet test --configuration Release -- ApiUrl=https://newurl
Я получаю сообщение об ошибке, в котором говорится, что словарь не содержит ключ «ApiUrl», что указывает на то, что параметр не был обработан. Прочитав документацию, я подумал, что, возможно, мне нужно полностью указать имя параметра с помощью TestRunParameters.ApiUrl. Это выдает ошибку XML.
Судя по всему, что я прочитал, я думаю, что делаю все правильно и не могу понять, что не так. Я использую инструменты версии 2.1.503.
Может ли кто-нибудь дать мне указания, как заставить это работать?
Подробнее здесь:
https://stackoverflow.com/questions/555 ... mmand-line