<style>.lazy{display:none}</style>15 вопросов и ответов на собеседовании по REST API на 2023 год

15 вопросов и ответов на собеседовании по REST API на 2023 год

Здесь представлены вопросы и ответы на собеседования по Rest API, которые могут задать как начинающим, так и опытным кандидатам на должность QA инженера.

1. Что такое REST и RESTFUL?

REST( REpresentational State Transfer) – это архитектурный стиль, он представляет собой репрезентативную передачу данных; это относительно новый аспект написания веб-интерфейсов.

RESTFUL – это набор правил и архитектурных принципов, который относится к веб-сервисам, написанным с применением архитектурной концепции REST и называемым RESTful-сервисами. Он фокусируется на системных ресурсах и на том, как состояние ресурса должно быть передано по протоколу HTTP различным клиентам, написанным на разных языках. В RESTFUL-службе для выполнения CRUD-операций могут использоваться такие HTTP-методы, как GET, POST, PUT и DELETE.

2. Объясните архитектурный стиль создания web API?

Ищите работу Junior QA? Тогда вам в наш телеграм канал QA Вакансии. 
Каждую неделю 7 лучших вакансий с телеграм контактом HR компании. 
БЕСПЛАТНО СКАЧАТЬ КНИГИ в телеграм канале "Библиотека тестировщика"

Архитектурным стилем для создания web API являются:

  • HTTP для взаимодействия клиент-сервер.
  • XML/JSON в качестве языка форматирования.
  • Простой URI в качестве адреса для сервисов.
  • Нестационарная связь.

3. Какие инструменты необходимы для тестирования веб-API?

Инструмент SOAPUI для SOAP Web Service и плагин Firefox “poster” для RESTFUL сервисов.

4. Rакие методы HTTP поддерживает REST?

Методы HTTP, поддерживаемые REST:

  • GET: Запрашивает ресурс по URL-адресу запроса. Не содержит тело запроса, так как оно будет отброшено. Может кэшироваться локально или на сервере.
  • POST: Отправляет информацию в службу для обработки; обычно возвращается измененный или новый ресурс.
  • PUT: Обновляет ресурс по URL-адресу запроса.
  • DELETE: Удаляет ресурс по URL-адресу запроса.
  • OPTIONS: Указывает, какие методы поддерживаются.
  • HEAD: Возвращает метаинформацию по URL-адресу запроса.

Рассмотрим эти методы с точки зрения одной записи. Например, имеется запись о сотруднике номер 1.

Следующие действия будут иметь соответствующие значения:

  • POST – не применяется, поскольку мы получаем данные о сотруднике номер 1, который уже создан.
  • GET – используется для получения данных о сотруднике номер 1 с помощью RESTful веб-сервиса.
  • PUT – используется для обновления данных о сотруднике номер 1с помощью RESTful веб-сервиса.
  • DELETE – используется для удаления данных о сотруднике номер 1.

5. Можно ли использовать для создания ресурса запрос GET вместо PUT?

Нет, в этой ситуации не получится использовать метод PUT вместо GET. Операции GET имеют только права просмотра информации, в то время как метод PUT используется для обновления данных.

6. Что такое ресурсы в архитектуре REST?

Данные, которые получают или изменяют клиенты посредством запросов, называют ресурсами. Основа клиент-серверного взаимодействия — манипуляция над ресурсами. Ресурсы идентифицируются логическими URL-адресами; это ключевой элемент RESTful-конструкции.

7. В чем разница между AJAX и REST?

AJAXREST
В Ajax запрос отправляется на сервер с помощью объектов XMLHttpRequest. Полученный ответ используется кодом JavaScript для динамического изменения текущей страницы.REST имеет структуру URL и шаблон запроса/ответа, которые связаны с использованием ресурсов.
Ajax – это набор технологий, представляющих собой технику динамического обновления частей пользовательского интерфейса без необходимости перезагрузки страницы.REST – это тип архитектуры программного обеспечения и метод, с помощью которого пользователи запрашивают данные или информацию с серверов.
Ajax устраняет взаимодействие между клиентом и сервером асинхронно.REST требует взаимодействия между клиентом и сервером.

8. Укажите ключевые характеристики REST?

Основные ключевые характеристики REST:

  • Поддерживает различные форматы – JSON, XML, текстовые и т.д.
  • Работает только по протоколам http и https.
  • Может быть закэширован (на основе чтения).
  • Не содержит четкого свода правил для подчинения.

9. Какие существуют различные стили интеграции приложений?

Различные стили интеграции включаю:

  • Общая база данных.
  • Пакетная передача файлов.
  • Вызов удаленной процедуры (RPC).
  • Обмен асинхронными сообщениями через ориентированное на сообщения промежуточное ПО (MOM).

10. Укажите, в чем разница между PUT и POST?

PUT помещает файл или ресурс на определенный URI. Если на этом URI уже есть файл или ресурс, PUT изменяет их. Если ресурса или файла там нет, PUT их создает.

POST отправляет данные на определенный URI и ожидает, что ресурс на этом URI ответит на запрос. Веб-сервер в этот момент может решить, что делать с данными в контексте указанного ресурса.

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

POST не является идемпотентным, то есть при многократном вызове POST он продолжает создавать все новые и новые ресурсы.

11. Какой язык разметки может быть использован в restful web api?

JSON и XML – два языка разметки, которые могут использоваться в restful web api.

12. В чем разница между веб-сервисами в стиле RPC и в стиле документов?

В веб-сервисах документного стиля мы можем передавать XML-сообщение как часть SOAP-запроса, что невозможно в веб-сервисе стиля RPC (Remote Procedure Call). Веб-сервис в стиле документа наиболее уместен для приложений, где XML-сообщение ведет себя как документ, содержимое которого может меняться, а намерения веб-сервиса не зависят от содержимого XML-сообщения.

13. Укажите, что такое JAX-WS и JAX-RS?

JAX-WS и JAX-RS – это библиотеки (API) для осуществления коммуникаций различными способами на языке Java. JAX-WS может быть использована для осуществления SOAP-коммуникаций на JAVA, а JAX-RS позволяет осуществлять REST-коммуникации на JAVA.

14. Перечислите инструменты или API для разработки или тестирования web api?

К инструментам тестирования веб-сервисов для REST API относятся:

15. В чем разница между SOAP и REST?

SOAPREST
SOAP – это протокол, с помощью которого два компьютера обмениваются XML-документами.Rest – это архитектурный стиль, дизайн для сетевых архитектур программного обеспечения.
SOAP допускает использование только XML.REST поддерживает множество различных форматов данных.
Чтения на основе SOAP не могут быть кэшированы.Чтения REST могут быть кэшированы.
SOAP использует WSDL (Web Services Description Language) REST не имеет стандартного языка определения сервиса.
SOAP работает медленнее, чем REST.REST быстрее, чем SOAP.
SOAP не накладывает ограничений на тип транспортного протокола.REST подразумевает наилучшее использование транспортного протокола HTTP.

Перевод статьи «15 REST API Interview Question and Answers for 2023».

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *