Ложный SOAP-запрос и ответ - PullRequest
0 голосов
/ 27 июня 2018

Для насмешек в настоящее время мы записываем SOAP-запрос и ответ в файловой системе с определенной структурой папок, такой как Папка для запроса

  • test1_request.xml
  • test2_request.xml
  • test3_request.xml

Папка ответов

  • test1_response.xml
  • test2_response.xml
  • test2_response.xml

Когда мы сначала запускаем наш набор тестов, мы сканируем этот каталог и сохраняем содержимое файла в хэш-карте, например. Map.put (запрос, ответ)

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

Теперь проблема в том, что мы накопили тысячи тестовых случаев и запросов, что замедляет весь процесс выполнения теста. К вашему сведению, мы интегрировали это в наш процесс сборки, поэтому при каждом запуске сборки мы выполняем все наши модульные тесты.

Есть рекомендации по улучшению?

Я думал индексировать эти файлы req / res, используя solr или lucene, но не уверен, предоставляют ли они какой-либо механизм карт, где я передаю запрос мыла и получаю соответствующий ответ.

1 Ответ

0 голосов
/ 27 июня 2018

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

В вашем контроллере вы можете создать хеш для запроса, и вы непосредственно найдете ответ, просто открыв правильный файл.

В качестве альтернативы вы можете создать файл csv / properties с «запросом хэша» к «имени файла ответа» и просто загрузить этот файл. Должно быть намного быстрее, чем всегда загружать все запросы и ответы. Это более или менее простой индекс, lucene / solr должен быть слишком большим для этого варианта использования.

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