Полезные макетные данные и генераторы API

Тестирование - важная часть жизненного цикла разработки. Нам часто требуется сгенерировать различные тестовые данные, чтобы проверить функциональность серверной части в различных сценариях. Это может занять много времени, если мы хотим создавать данные самостоятельно. Другая проблема заключается в том, что данные могут быть предвзятыми, и исключительные случаи использования могут быть не охвачены.

В этом руководстве я покажу вам несколько удобных ресурсов для создания фиктивных данных, имитации API и быстрой генерации JSON-to-class. Таким образом, мы можем сосредоточиться на задачах разработки, а не на подготовке данных.

Давайте начнем!

Mockaroo для создания реалистичных данных и тестирования API

Mockaroo предоставляет богатые фиктивные данные для вашего бэкэнд-тестирования. Есть бесплатная и премиум версия. Бесплатная довольно хороша и охватывает все функции. Ограничение состоит в том, что у вас может быть до 1000 строк поддельных данных.

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

Давайте посмотрим на быстрый пример создания новой схемы с использованием их встроенных типов.

Перейдите на страницу схем Mockaroo, чтобы создать схему:

Как видно из примера, существует большое разнообразие типов.

Нажмите «Сохранить эту схему», чтобы сохранить данные. Вы можете выбрать JSON или другой формат, например CSV или XML:

Может быть полезно протестировать ваш код на предметных именах с неалфавитными символами.

Вы даже можете создать свой собственный базовый набор данных на основе их формул.

Теперь давайте посмотрим, как имитировать конечные точки API.

  • Убедитесь, что вы сохранили свою схему. Я назвал свой people.
  • Перейдите на страницу Mockaroo's Mock APIs, чтобы создать поддельный API. Вы можете выбирать между запросами GET, PUT, POST, PATCH, DELETE и OPTIONS. Я буду использовать GET:

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

Еще одна интересная особенность - Mockaroo поддерживает подстановку параметров URL.

  • Сначала добавьте :param в маршрут запроса.
  • Затем измените сценарий обработчика, заменив параметр параметром, переданным в URL-запрос.

Например, давайте предоставим параметр :id. Синтаксис выглядит так:

  • Мы говорим скрипту создать одну строку и поместить результат в переменную data.
  • id будет равен параметру id, который мы передаем в URL-адрес запроса.
  • Наконец, отобразите в результатах всю строку data.

Например, я передам в запрос идентификатор с номером 111: «https://my.api.mockaroo.com/people/111?key=yourkey.

Ответ:

{"id":"111","first_name":"Shaughn","last_name":"Retchless","email":"[email protected]","gender":"Non-binary","ip_address":"168.202.195.191","city":"Ukrainka"}

Каким был бы синтаксис, если бы вы хотели сгенерировать больше строк?

Данные будут просто обрабатываться как array.

Предположим, мы хотим передать запросу city:

Запрос: «https://my.api.mockaroo.com/people/Budapest?key=yourkey.

Ответ:

[{"id":1,"first_name":"Darci","last_name":"Ravenshear","email":"[email protected]","gender":"Agender","ip_address":"129.164.5.244","city":"Budapest"},
{"id":2,"first_name":"Tymothy","last_name":"Kubiak","email":"[email protected]","gender":"Male","ip_address":"34.94.118.160","city":"Warburton"}]

JSONPlaceholder для создания поддельных данных и быстрого прототипирования

JSONPlaceholder - это бесплатный онлайн-REST API, в котором есть несколько заранее определенных наборов фиктивных данных. Хотя он менее сложен, чем Mockaroo, он может быть очень удобен. Если вы хотите создать быстрый прототип для учебного пособия или демонстрации проекта, вы будете готовы через несколько минут с помощью этого инструмента.

Например, попробуйте этот URL-адрес, чтобы получить пользователя по userId: https://jsonplaceholder.typicode.com/users/1.

Ответ:

Он поддерживает запросы GET, PUT, POST, PATCH и DELETE.

Quicktype для преобразования JSON в код

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

Quicktype помогает сгенерировать класс на разных языках на основе JSON данных. Это реальная экономия времени, когда у вас есть большая JSON структура и вы хотите преобразовать ее в класс.

Вы можете выбирать между новыми языками, такими как Dart, и более старыми, такими как Java.

Поскольку я уже создал несколько фиктивных данных с помощью Mockaroo, я буду использовать их для демонстрации:

Кстати, я впечатлен тем, что он поддерживает даже библиотеку Java Lombok!

Заключение

В этой статье вы увидели, как создавать фиктивные данные и конечные точки API с помощью Mockaroo и JSONPlaceholder. Затем мы использовали quicktype для преобразования JSON в код всего за несколько секунд.

Я надеюсь, что вы примените эти инструменты в своих будущих проектах.

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

Вам также могут понравиться мои статьи о других полезных технологиях разработки:





Спасибо за чтение и удачного кодирования!