Чтобы не зашивать в тесты все плавающие пользовательские переменные, такие как имена баз, строки подключения, логины, пароли и др., имеется возможность забирать эти переменные из внешнего файла или внешнего key-value хранилища по http протоколу (поддерживается Consul
). Это может быть особенно полезно, когда над фичами работает команда, и у каждого участника существуют свои настройки подключения к базам.
Чтобы воспользоваться этой функциональностью для файлового режима, нужно выполнить следующее:
- В своем каталоге проекта создать файл
user_settings.json
следующего формата:
{
"userSettings": [
{
"user": "USERNAME_1",
"settings": {
"ИМЯ_ПЕРЕМЕННОЙ_1": "ЗНАЧЕНИЕ_ПЕРЕМЕННОЙ_1",
"ИМЯ_ПЕРЕМЕННОЙ_2": "ЗНАЧЕНИЕ_ПЕРЕМЕННОЙ_2",
}
},
{
"user": "USERNAME_2",
"settings": {
"ИМЯ_ПЕРЕМЕННОЙ_1": "ЗНАЧЕНИЕ_ПЕРЕМЕННОЙ_1",
"ИМЯ_ПЕРЕМЕННОЙ_2": "ЗНАЧЕНИЕ_ПЕРЕМЕННОЙ_2",
}
}
]
}
-
В свойства user поставить доменное (локальное) имя пользователя, для которого должны применяться настройки. Именно по этому свойству будет определяться, какие пользовательские настройки нужно загружать.
-
В свойстве settings прописать конкретные настройки для каждого пользователя. Состав настроек необязательно должен совпадать между пользователями, для какого-то пользователя настройки могут отсутствовать.
-
Открыть обработку
bddRunner
из корняVanessa.ADD
- файлuser_settings.json
подтянется автоматически из каталога, в котором находитсяVanessa.ADD
(полеКаталог инструментов
на вкладкеСервис
). Если такого файла нет, то загрузка не выполняется. Имеется возможность указать свой каталог загрузки настроек, он подчиняется свойствуКаталог проекта
на вкладкеСервис
.
Если файл найден, то на основании текущего имени пользователя компьютера или домена (которое определяется через WShell скрипт), ищутся настройки текущего пользователя и загружаются только они. Если настройки не найдены, то выводится предупреждающее сообщение.
Чтобы воспользоваться этой функциональностью для Consul
-a нужно:
- Развернуть единый сервер консула и установить агентов консула на каждой машине, на которой запускается
Vanessa.ADD
. - На вкладке
Сервис
вVanessa.ADD
указатьПоставщик пользовательских настроек
равнымCONSUL
, а в полеАдрес пользовательских настроек
указать полный url к настройкам на сервере. Url должен содержать путь, доступный через REST интерфейс консула, например http://127.0.0.1:8500/v1/kv/ivanov