Загрузите сборку.файл json конкретного проекта автоматически без жесткого кодирования

#groovy #spock

#groovy #спок

Вопрос:

Я запускаю тестовый пример и хочу, чтобы код автоматически загружал соответствующий файл .json .

Прямо сейчас я жестко кодирую файл, но я хочу, чтобы он загружался при запуске соответствующего тестового класса, поэтому я хочу сделать его универсальным.

   def setupSpec() {
  config = (Map) new 
     JsonSlurper().parse(getClass().getResourceAsStream("wps.build.json"))
    config.build = "Wps build ${new Date()}"
    caps = bsLocal.defaultCaps
    caps.setCapability("build", config.build)
    caps.setCapability("browserstack.console", "info")
    attempts = config.environments.size()
  }```
  

Это структура
https://imgur.com/g7a2B3n

Комментарии:

1. загрузите его, например, по имени класса WPS.class -> wps.json . в чем проблема?

2. если я запускаю другой тестовый пример, как мне получить имя класса для запущенного тестового примера??

3. this.getClass().getName()

4. да, это нормально, но спецификация настройки в соответствии с spock framework выполняется перед первым методом . Итак, эта спецификация настройки относится к другому классу . Поэтому, пока он выполняется, мне нужно получить имя класса. this.getClass().getName() вернет имя класса методов setupspec() . что мне нужно, так это имя класса тестовых примеров, здесь, чтобы я мог интерполировать и добавлять имя, а не жестко. Ты понял, братан?