Секреты как переменные среды в vstest - PullRequest
0 голосов
/ 04 мая 2020

В своих тестах я использую переменную среды. По соображениям безопасности при установке в azure devops pipe мне нужно пометить его как секретный. Можно ли передать его в качестве аргумента в рамках задачи vstest?

1 Ответ

1 голос
/ 04 мая 2020

Я прошел через это. Невозможно передать переменные в VSTest в командной строке, а это значит, что вам нужно пройти через несколько циклов.

У вас есть несколько вариантов:

  • Используйте файл runsettings с разделом TestRunParameters, а затем получите доступ к нему через TestContext.Properties["variableName"] в самих тестах. Вы можете использовать стандартные шаблоны замены токенов для преобразования файла XML.

  • Используйте app.config или appsettings. json (в зависимости от вашей платформы). Это работает почти так же, как и выше, за исключением того, что, конечно, вы используете стандартные классы конфигурации для извлечения значений.

  • Добавьте в свой конвейер шаг, который устанавливает соответствующие переменные среды. Секреты не автоматически сопоставляются с переменными среды в целях безопасности, но ничто не мешает вам сделать это самостоятельно.

  • Переместить секретные значения в keyvault или какой-либо другой вид внешнего секретного хранилища и настройте тест на извлечение секретов во время выполнения.

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