Нашел решение, но не уверен, что это правильный путь.
Шаг 1 : создание файла конфигурации и загрузка системных свойств.
Config.java
public class Config {
public Map<String, Object> readProperties(String optionalString) {
Map<String, Object> propertiesMap = new HashMap<>();
final String host = System.getProperty("host");
propertiesMap.put("host", host);
return propertiesMap;
}
}
Шаг 2 : Добавить шаг (перед другими шагами) для использования загруженных свойств в файле .json.
test.json
{
"scenarioName": "Test ...",
"steps": [
{
"name": "config",
"url": "com.test.Config",
"operation": "readProperties",
"request": "",
"assertions": {}
}
]
}
Шаг 3 : использовать загруженное свойство в настройке шага
test.json
{
"scenarioName": "Test ...",
"steps": [
{
"name": "config",
"url": "com.test.Config",
"operation": "readProperties",
"request": "",
"assertions": {}
},
{
"name": "test",
"url": "${$.config.response.host}/test/xxx",
"operation": "GET",
"request": {},
"assertions": {
"status": 200
}
}
]
}
Вот и все, хотя это работает, но я ищу лучший подход.
Некоторые возможные варианты, которые я пробую:
- Общий шаг для загрузки / конфигурации (в одном месте)
- Непосредственное использование свойств как {host} в файлах json
- Пользовательский клиент
Снова приветствуется любая помощь / идеи.