12 бесплатных инструментов для проектирования, разработки и тестирования API
Появление RESTful API сопровождалось появлением инструментов для их создания, тестирования и управления.
Независимо от того, являетесь ли вы новичком, создающим свой первый API, или экспертом, работающим в сжатые сроки, у вас есть целый ряд услуг, которые помогут вам довести ваш API от концепции до производства. Многие из них не будут стоить вам ни копейки.
Мы расскажем вам о бесплатных сервисах для работы с API. Некоторые из них представляют собой быстрые приложения, которые облегчат работу по сборке или тестировании API. Другие – для полномасштабных служб управления API профессионального уровня, позволяющие вам начать работу на пробной основе и перейти на более высокий уровень (платного) обслуживания, если вам это нужно.
Amazon API Gateway
Бесплатный уровень AWS предоставляет разработчикам бесплатный доступ к большинству сервисов, предлагаемых AWS, включая Amazon API Gateway. Ваш бесплатный Amazon API Gateway достигает максимума в миллион вызовов API в месяц и длится всего один год, но этого достаточно, чтобы начать работу.
Полная платная версия Amazon API Gateway позволяет создавать API-интерфейсы для приложений, построенных на Amazon EC2, AWS Lambda или любом другом веб-приложении, с помощью таких метаинструментов, как управление трафиком, контроль версий API и мониторинг всех компонентов пакета.
APImetrics
APImetrics – это сервис мониторинга и оповещения API, который включает в себя визуальный конструктор API, поддержку как REST, так и SOAP API (облегчающий переход от последнего к первому), систему документооборота, позволяющую последовательно запускать несколько вызовов API, и панель мониторинга для всего, что может выйти из-под контроля. Бесплатного уровня не существует, но компания предлагает 14-дневную бесплатную пробную версию своих различных уровней обслуживания. Минимальный тарифный план позволяет совершать до 20 000 звонков за 18 долларов в месяц, но все результаты звонков сохраняются на неопределенный срок, поэтому вы не платите отдельно за их сохранение.
Assertible
Assertible позволяет настраивать простые тесты для мониторинга рабочих API. Вы можете импортировать API-интерфейсы из распространенных сторонних форматов, включая Swagger, Postman и curl. Вы можете группировать тесты по различным критериям и выполнять их с различными параметрами среды (например, промежуточный или производственный) или с дополнительной проверкой SSL, если вы тестируете за пределами своего домена по умолчанию. И вы можете выполнять подтверждаемые тесты по расписанию или с помощью триггеров, а статус теста публиковать на GitHub.
Персональный план является бесплатным, но позволяет использовать только два веб-сервиса, 10 тестов на сервис и сохранять 1000 результатов. Платные планы, стоимость которых начинается с 25 долларов в месяц, повышают лимит использования и позволяют проводить тесты чаще.
BlazeMeter
BlazeMeter – это служба нагрузочного тестирования API, которая предоставляет отчеты в режиме реального времени. Другие преимущества включают геораспределенное нагрузочное тестирование, что означает, что вы можете получать трафик с серверов на нескольких континентах, а также поддержку тестов, созданных Apache JMeter. Макеты сервисов и тестовые данные могут быть собраны и сгенерированы, чтобы сделать ваши тесты более реалистичными и отражающими фактическое использование.
Бесплатный уровень для BlazeMeter позволяет запускать 10 тестов в месяц (максимум по 20 минут каждый) с одновременным использованием до 50 пользователей, одним генератором общей нагрузки и одной неделей хранения данных. Платные планы начинаются с 99 долларов США в месяц за 1000 одновременных пользователей, 200 тестов в год и три месяца хранения данных.
Httpbin.org
Httpbin.org предоставляет вам массив ответов конечных точек HTTP API, которые полезны для тестирования или отладки интерфейсов, отправляющих запросы. Вместо того чтобы настраивать ответы через веб-интерфейс, вы настраиваете их с помощью параметров URL. Это позволяет легко автоматизировать использование сервиса.
Например, конечная точка /links/:n позволяет запрашивать веб-страницу с n HTML-ссылками – например, для тестирования веб-скрейпинга. Программное обеспечение, которое управляет сервисом Httpbin, также доступно в виде лицензированного пакета Python, подобного MIT, поэтому вы можете разместить его локально.
IBM API Connect
Как и AWS, IBM Cloud предлагает бесплатный уровень, которого будет достаточно, чтобы дать разработчикам представление о том, что доступно, но недостаточно полнофункционально для создания полномасштабных производственных приложений. И, как и AWS, на бесплатном уровне IBM Cloud предлагает инструмент управления API – IBM API Connect.
IBM API Connect изначально был просто инструментом для создания API и подключения их к живому коду. Сегодня он также включает в себя инструменты для обеспечения соблюдения политики в отношении API, создания составных конструкций API и интеграции облачных сервисов с корпоративными системами записи. Сервис имеет бесплатный уровень в 50 000 вызовов API в месяц – этого более чем достаточно. Обратите внимание, что IBM Cloud автоматически удаляет все службы бесплатного уровня после тридцати дней бездействия, поэтому используйте их или потеряйте.
JSONPlaceholder
Хотите протестировать систему чтения API с некоторыми поддельными данными? JSONPlaceholder предлагает ряд конечных точек, которые предоставляют поддельные данные в нескольких распространенных формах — сообщения на доске объявлений, комментарии, изображения, задачи и так далее. Все результаты возвращаются в формате JSON, и поддерживаются все HTTP-методы (GET, POST, PUT и т.д.).
Загрузки
Можно ли быть уверенным, что с вашим общедоступным API не произойдут неполадки в ту же минуту, как он заработает? Это можно узнать только если проверить, насколько хорошо он выдерживает большие загрузки. Зарегистрируйте конечную точку целевого хоста с помощью веб-интерфейса или API загрузчика, и результаты тестирования будут доставлены вам через страницу браузера в режиме реального времени. Бесплатная версия сервиса позволяет вам тестировать один целевой хост в течение одной минуты за раз, используя до 10 000 клиентов и два URL-адреса на тест. Платные планы обойдутся вам в 99,95 долларов США за месяц. Они снимают большую часть ограничений.
Mockable
Mockable – это еще один быстрый сервис для макетирования конечных точек REST и SOAP. Базовый уровень бессрочно бесплатен и включает поддержку mocks по протоколу HTTPS, хотя любые маршруты, не использованные в течение трех месяцев, удаляются, журналы сохраняются только в течение 24 часов или 5 МБ. Вам также разрешено создавать не более 10 mocks на команду из трех человек. Самое приятное: вам даже не нужно регистрироваться, чтобы протестировать его. Временные учетные записи автоматически создаются в ту же минуту, когда вы входите в консоль администратора.
Mockbin
Mockbin.com от поставщика API gateway Kong позволяет создавать макеты конечных точек для тестирования. Конечные точки могут использовать любой метод HTTP, возвращать результаты в формате JSON, YAML, XML или HTML, присоединять заголовки CORS к ответам, а также регистрировать и проверять трафик вызовов. Данные в формате HAR также можно использовать для автоматической генерации HTTP-ответов, чтобы макеты более точно соответствовали фактическим результатам, возвращаемым с реального сервера. Mockbin также доступен как свободно лицензированный проект с открытым исходным кодом.
Runscope
Runscope предлагает веб-инструментарий для проверки того, что ваши API работают должным образом, возвращают действительные данные и могут быть отлажены. Вы можете импортировать планы тестирования, используя стандарт определения API Swagger 2.0, а также множество других распространенных форматов, включая формат, который Runscope использует для своих собственных продуктов тестирования. Бесплатного уровня не существует, но 14-дневные бесплатные пробные версии доступны для всех тарифных планов, за исключением индивидуального корпоративного уровня.
Swagger Inspector
Swagger Inspector от Smartbear похож на Httpbin, позволяя запрашивать API-интерфейсы прямо в браузере и сохранять результаты для последующей проверки. Swagger Inspector также работает не только с REST API, поддерживая также SOAP и GraphQL. Документация для вашего API может быть автоматически сгенерирована на основе выполненных вами тестов. Бесплатный план поддерживает три определения API, а платные аккаунты начинаются с 75 долларов в месяц.