Рейтинг:1

Как создать функциональные тесты для тестирования REST-запросов, которые есть на сайте?

флаг jp

Я пытаюсь понять, как создавать тесты для REST Endpoint, которые создает пользовательский модуль.

Мне удалось создать модульный тест для метода Get ресурса Rest, и теперь я хочу создать функциональный тест для конечной точки REST.

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

Буду признателен, если Вы проясните следующие вопросы:

  1. Как дать анонимным пользователям некоторые разрешения? Я попытался сделать это через импорт user.role.anonymous.config с необходимыми разрешениями в мою тестовую таблицу конфигурации, но безуспешно.
  2. Как правильно отправлять запросы на REST-endpoint? Насколько я понимаю, метод drupalGet не лучшее решение для этого. У меня была идея использовать для этого exec('curl ...') , но я не нашел истинной точки входа в тестовую среду Drupal, и более того, я не уверен, что это правильный путь.
  3. Как выполнить последовательность запросов в этом случае? Я имею в виду запросы на аутентификацию Oauth2/Token и после этого запросы к REST-конечным точкам.

Заранее спасибо.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.