Я запускаю модульные тесты как часть решения ASP.NET Core MVC.Если быть точным, версия .NET Core - 2.1.
Я создал раздел профиля в файле launchSettings.json, который содержит переменные среды, которые я хотел бы загрузить и внедрить в программу запуска тестов, чтобыпеременные среды доступны и могут содержать конкретные значения при запуске модульных тестов.
Файл launchSettings.json из моего проекта ASP.NET Core MVC добавляется в мой проект модульных тестов в виде ссылки, и свойства устанавливаются вДействие построения - Нет, Копировать в выходную папку - Копировать всегда.
Файл копируется в мою выходную папку, но я не уверен, как заставить тестировщика использовать этот файл с профилем UnitTesting.Я пробовал использовать слово «Test» в качестве имени профиля, похоже, ничего не работает.
Вот пример файла launchSettings.json:
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:62267/",
"sslPort": 0
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"MigrationHistoryTableName": "MigrationHistory",
"ConnectionStringName": "EFConnectionString",
"Redis__SSL": "True",
"Redis__Port": "6380",
"Redis__InstanceName": "RedisDev",
"Redis__AbortConnect": "False",
"Redis__ConnectionString": "{URI}:{Port},password={Password},ssl={SSL},abortConnect={AbortConnect}"
}
},
"MyDataServices": {
"commandName": "Project",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"MigrationHistoryTableName": "MigrationHistory",
"ConnectionStringName": "EFConnectionString",
"Redis__SSL": "True",
"Redis__Port": "6380",
"Redis__InstanceName": "RedisDev",
"Redis__AbortConnect": "False",
"Redis__ConnectionString": "{URI}:{Port},password={Password},ssl={SSL},abortConnect={AbortConnect}"
},
"applicationUrl": "http://localhost:4080/"
},
"UnitTesting": {
"commandName": "Executable",
"executablePath": "test",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development",
"MigrationHistoryTableName": "MigrationHistory",
"ConnectionStringName": "EFConnectionString",
"Redis__SSL": "True",
"Redis__Port": "6380",
"Redis__InstanceName": "RedisDev",
"Redis__AbortConnect": "False",
"Redis__ConnectionString": "{URI}:{Port},password={Password},ssl={SSL},abortConnect={AbortConnect}"
}
}
}
}
Я понимаю, что по умолчанию launchSettings запускаФайл .json игнорируется в git.Мы проверим наш код с версией для разработчиков этого файла, которая будет содержать пример настроек, которые, как ожидается, будут доступны в среде разработки.
Спасибо, что нашли время, чтобы прочитать это и помочьвне!