Как я могу изменить хост в моем файле json для клиента Swagger в зависимости от моей спецификации транспортира?

#json #protractor #swagger

#json #транспортир #swagger

Вопрос:

Я использую клиент swagger для тестирования своего REST. Для запуска моих тестов в разных средах у меня разные базовые адреса в файлах конфигурации для Protractor. Есть ли возможность установить хост в json.файл для клиента Swagger на baseUrl, который я использую в своем конфигурационном файле для Protractor? Я надеюсь, что кто-то понимает, что я хочу сделать! Заранее спасибо

Ответ №1:

Я не совсем уверен в формате JSON спецификации клиента Swagger, но я отвечаю на общий вопрос.

 How to update a JSON file amp; set the value in JSON file based on config.baseUrl before the test runs
  

В onPrepare() файле конфигурации Protractor есть нечто, называемое option, которое выполняется до запуска спецификации и доступности глобальных объектов Protractor

Здесь есть логика для обновления вашего JSON здесь, используя browser.baseUrl here

  onPrepare: function() {
      var file_content = fs.readFileSync('spec.json');
      var content = JSON.parse(file_content);
      //Not sure of your JSON structure but this should work. Below example quotes simple structure
      content.url = browser.baseUrl;
      fs.writeFileSync('spec.json', JSON.stringify(content));
    },
  

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

1. Рад, что это сработало .. Можете ли вы пометить это как ответ, чтобы решить проблему