Выбрать страницу

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

API расшифровывается как Интерфейс прикладного программирования. Это программно-программный интерфейс. С API приложения общаются друг с другом без вмешательства клиента. Но с тысячами API доступны, Почтальон приходит в картину, чтобы создать, проверить, поделиться и управлять этими API делает использование API эффективным и менее утомительным.

Эта статья поможет вам понять, что такое Postman, что такое Postman Collections, основные функции и преимущества, а также как вы можете настроить нагрузочные тесты для коллекций Postman и их интеграцию с конвейерами CI / CD с LoadView.

Тестирование нагрузки почтальона с LoadView

Изучите наше решение для тестирования нагрузки или прочитайте ниже для получения шагов по использованию Postman с LoadView

Что такое почтальон?

Postman — это популярный клиентский инструмент API, который облегчает командам разработчиков создание, совместное использование, тестирование и документирование API. Это обеспечивает бесшовный пользовательский опыт, который помогает в ударе по конечной точке API, быстро создавая запросы в соответствии со спецификацией API и рассекая различные параметры ответа, такие как код статуса, заготовки и сам фактический орган ответа. Мы можем использовать эти функции для непрерывного и автоматизированного тестирования. Он используется в качестве сопутствующего средства для разработки, документирования и тестирования с помощью API и предоставляет пользовательский интерфейс для выполнения запросов сервера API REST (Representational State Transfer) и отображения ответа от серверов.

Почтальон — это инструмент разработки API, используемый в жизненном цикле разработки программного обеспечения:

  • Разработка API
  • Тестирование API
  • Документация API

Postman не только предоставляет нам среду для работы с API, но также может использоваться для запроса веб-страниц, таких как браузер. Введите URL-адрес в адресной строке и нажмите отправить, чтобы увидеть ответ HTML (язык гипертекстовой разметки). Почтальон также может помочь в приложении скриптов до того, как пользователь отправит запрос и после получения ответа. Мы можем хранить каждый запрос в коллекции, которая позже может быть использована для хранения всех запросов в порядке.

Тем не менее, одна вещь, которой Postman не является, — это инструмент тестирования производительности. Хотя вы сможете выполнять небольшие контролируемые тесты, которые дают вам время отклика API, это не то же самое, что запускать тест в реальных условиях. Это не подвергает API какому-либо реальному стрессу, поэтому это не является хорошим показателем того, как ваш API будет реагировать, когда участвуют реальные пользователи. Для этого вам нужно такое решение, как LoadView, о котором мы поговорим более подробно далее в этой статье.

Интерфейс почтальона

Что такое тестирование API?

При тестировании API мы используем специальные инструменты для отправки звонков на сервер, принимающий API, и получения ответа. Целью тестирования API является подтверждение правильного выполнения и проверка того, получает ли API, сохраняет или обновляет ресурсы по назначению.

Если мы знаем, что API должен выполнять определенные действия, такие как обновление данных, получение данных, удаление данных, изменение данных, тесты должны проверить результаты этих действий. Он ведет себя так же, как и должен быть? А когда этого не должно произойти? И результаты, которые вы ожидаете, что это будет? Тестирование API, как правило, тестирование черного ящика, но в той степени, что у нас есть доступ к результатам действий API заранее, и мы знаем ожидаемый ответ, который должен быть проверен.

Тестирование API: функциональное тестирование против тестирования нагрузки

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

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

Особенности Почтальона

По-видимому, нет конца огромному количеству функций, которые Postman предлагает пользователям. От таких функций, как Postman API и элементы управления рабочим процессом, до встроенных мониторов для регрессионного тестирования, инструмент имеет покрытие тестирования API. Тем не менее, на высоком уровне есть несколько основных функций, которые понадобятся каждому тестировщику API. Давайте подробнее рассмотрим эти особенности.

Запросы на импорт

Почтальон предоставляет функцию импорта, где мы можем вставить сырой текст CURL и преобразовать его в запрос, отформатированный с такими деталями, как URL-адрес запроса, заголовники, орган запроса, параметры запроса и токены авторизации.

Многократная поддержка протокола и технологий

Функция клиента Postman API позволяет нам отправлять запросы REST, SOAP, WSDL и GraphQL .

Пишите тестовые случаи

Мы можем создавать тестовые случаи, которые заходят в добавленные API, и можем помочь в проверке ответов при утверждении ответов JSON/XML и проверки кода ответа.

Коллекции

Почтальон помогает нам создавать коллекции, которые помогают сегрегировать API с помощью папок Структура для различных проектов. Он обеспечивает поддержку для запуска коллекции, которая в конечном итоге запустит все API часть коллекции.

Проверка JSON Schema

Схему JSON (JavaScript Object Notation) можно использовать для определения структуры их запросов и ответов. Это помогает очищать и структурировать контент JSON, делая его легким для понимания и чтения на Postman.

Использование окружающей среды и динамических переменных

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

Преобразование API в код

Почтальон позволяет преобразовать запрос API в код на всех известных языках, таких как JavaScript, Golang, Java, PHP, Python и многих других.

Преимущества почтальона

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

Автоматизация тестирования API

Это первое и самое очевидное преимущество Postman. Инструмент позволяет автоматизировать тестирование API и интегрировать коллекцию с конвейерами CI/CD. И, как мы упоминали выше, тестирование API использует форматы JSON или XML, которые не зависят от платформы приложений или протоколов, используемых разработчиками. Независимо от того, какой фреймворк вы используете (Python, JavaScript, Ruby и т. Д.), Postman поддерживает его. Можно автоматизировать модульные тесты, интеграционные тесты, регрессионные тесты и пробные тесты.

Платформа и ОС совместимы

Postman доступен для Mac OS X, Windows и Linux. Веб-приложение Postman также доступно и оптимизировано для Chrome, Firefox, Edge и Safari.

Отчеты о тестах почтальона

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

Интеграции

Postman предоставляет поддержку и может быть легко интегрирован со всеми основными инструментами разработчиков, такими как GitHub, Slack, Dropbox и GitLab.

Цены

Все основные функциональные возможности Почтальона бесплатны. Вы можете получить все вышеперечисленные преимущества бесплатно. Есть также платные планы для Почтальон Pro и Почтальон предприятия для малых и крупных предприятий.

Альтернативы почтальону

развязность

чванливый логотип

 

 

Swagger — это спецификация API с открытым исходным кодом, она похожа на WSDL для API REST, где вы определяете структуру API REST (конечные точки URL-адресов, модели ввода/вывода, схема аутентификации и т.д.). Файл спецификации основан на JSON, а расширение файла — на JSON или YAML. Некоторые из ключевых моментов Swagger являются:

  • С открытым исходным кодом и бесплатно, однако это может быть трудно узнать или найти ресурсы для вопросов.
  • Swagger представляет API в браузере.
  • Может автоматически генерировать документацию из создания ваших услуг.

Мыльный пользовательский интерфейс

Логотип SoapUI

 

 

 

SoapUI позволяет пользователям быстро и легко тестировать API REST и SOAP, так как инструмент был создан специально для тестирования API. SoapUI помогает в тестировании сложных комбинаций веб-сервисов, таких как RESTful, SOAP, JSON и AMF. Тем не менее, вы должны использовать WSDL для тестирования веб-сервисов. Кроме того, для автоматизации ingrate требуется много сценариев, и для пользователей, которые не имели этого опыта, это может стать трудным и трудоемким. Некоторые из ключевых моментов SoapUI являются:

  • Функция point-and-click помогает облегчить удобство использования JSON и XML.
  • Загрузка данных из Excel, файлов, баз данных и т.д.
  • Повторное использование функциональных тестовых случаев в качестве нагрузочных тестов.
  • Интегрируется со сторонними платформами управления API, поддерживает REST, SOAP, JMS, IoT и т.д.

Интеграция тестирования коллекции Почтальона в конвейер CI/CD

Непрерывная интеграция (CI) — это практика разработки, которая требует от разработчиков регулярного слияния кода в общий репозиторий. Она включает в себя процесс автоматизации сборки и тестирования приложений каждый раз, когда новое изменение становится приверженным исходный код. Непрерывное развитие можно объяснить последовательностью шагов, которые должны выполняться последовательно, чтобы приложение можно было работать на специализированном сервере и выполнять его использование при обслуживании запросов пользователей.

Загрузите коллекции почтальона с помощью LoadView

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

В тех случаях, когда мы используем Postman для тестирования функциональности веб-API и хотим создать тест нагрузки из коллекций вызова API, мы можем выбрать специализированный инструмент тестирования нагрузки, такой как LoadView. LoadView предоставляет реальные тестирования нагрузки на браузер для API, а также веб-приложений (внешних и внутренних), а также веб-сайтов и серверов.

испытательная установка

Мы будем пошаговому взгляду на то, как настроить тест нагрузки веб-приложений для коллекции Postman.

LoadView Почтальон API Тестирование: Шаг 1

Прежде чем мы даже начнем, мы должны экспортировать Postman Collection. Мы можем выбрать опцию для получить публичную ссылку и можем легко импортировать ее в LoadView (Примечание: Убедитесь, что Postman Collection использует локальные переменные только потому, что переменные среды не хранятся в коллекции).

Экспорт коллекции почтальона

LoadView Почтальон API Тестирование: Шаг 2

Откройте платформу LoadView и выберите тест «Создай новую нагрузку».

LoadView Почтальон API Тестирование: Шаг 3

Здесь вы увидите различные типы тестирования нагрузки, которые доступны в LoadView — веб-приложения, веб-сайты и API. Для нашего использования мы выбираем опцию Postman Collection для запуска тестов API.

Загрузка типа тестирования Почтальон

LoadView Почтальон API Тестирование: Шаг 4

Откроется новое окно, и вот где нам нужно будет импортировать экспортируемую коллекцию почтальона и нажмите Создать устройство.

Запрос на коллекцию почтальона

LoadView Почтальон API Тестирование: Шаг 5

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

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

Типы нагрузки коллекции почтальона

LoadView Почтальон API Тестирование: Шаг 6

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

Интеграция тестовой нагрузки Postman Collection Load с Jenkins

По мере того как мы смотрели как мы можем интегрировать и побежать испытания нагрузки собрания Postman используя LoadView, мы можем добавить эти испытания как часть CI/CD для того чтобы получить регулярн обратную связь и результаты представления. LoadView также обеспечивает интеграцию с Jenkins, которая помогает веб-сайтам стресс-тестов, веб-приложениям и API с одновременными соединениями в реальных браузерах из полностью управляемого облака. Любые новые обновления или дополнительные функции также могут быть проверены с помощью плагина LoadView для Jenkins.

Давайте рассмотрим шаги, используемые для ранее созданного сценария тестирования коллекции Postman в LoadView и его интеграции с Jenkins.

Шаг 1. Чтобы интегрировать тесты с Jenkins, мы будем использовать тот же сценарий теста Почтальона, созданный выше.

Шаг 2. Создайте уникальный UID. Он будет использоваться в качестве маркера безопасности для интеграции в Jenkins. Копирование интеграционного UID.

Почтальон Дженкинс Интеграция UID

Шаг 3. Идентификатор тестового сценария для нашей коллекции Postman можно найти на странице настройки сценария или на странице истории тестирования (Test Manager > меню тестовых действий > History).

История тестирования коллекции почтальона

LoadView Плагин в Дженкинс

Чтобы настроить плагин LoadView, следуйте этим шагам:

  1. Войдите в свой аккаунт Дженкинса.
  2. В Jenkins перейдите на учетные > данные, добавляйте > токен безопасности LoadView (UID). Настройка и проверка учетных данных.
  • Вид. Токен безопасности LoadView (UID).
  • Область действия. Выберите Глобальный.
  • ID. Оставьте по умолчанию или укажите уникальный идентификатор.
  • Описание . Укажите уникальное описание, чтобы различать учетные данные.
  • UID. Вставьте веб-API-API-api с вашей учетной записи LoadView. После добавления UID нажмите Validate UID, чтобы убедиться, что Дженкинс может получить доступ к API LoadView.
  1. Далее выберите задание и нажмите Настройка.

Токен безопасности Jenkins LoadView

  1. Перейти к > созданию пост-сборки > Действия Добавить после сборки > действий LoadView-Run сценарий тестирования нагрузки. Укажите настройки стресс-теста LoadView для сборки:
  • Учетные данные. Выберите ключ API, используя описание.
  • Идентификатор сценария. Вставьте идентификатор сценария тестирования, который вы хотите использовать в сборке. Копировать идентификатор со страницы сценария в LoadView.
  • Порог ошибки. Укажите приемлемый процент сеансов с ошибками, которые произошли во время тестирования (не удалось получить доступ к целевому ресурсу, не ключевые слова / изображения не найдено и т.д.). Если процент сеансов ошибок превышает указанное значение, сборка будет помечена как сбойв Jenkins.
  • Среднее время. Укажите ограничение на среднее время отклика, измеренное во время выполнения теста. Если лимит достигнут, сборка будет помечена как сбойв Jenkins.
  1. Нажмите Сохранить.

Просмотр результатов тестирования LoadView

Наконец, мы успешно интегрировали нашу коллекцию Postman с Jenkins, используя LoadView в качестве платформы. Во время времени времени, как работает наш стресс-тест, статус отображается в выходе консоли Jenkins в режиме реального времени.

Почтальон Дженкинс Консоль Выход

Почтальон Дженкинс LoadView Результаты тестирования производительности

Мониторинг почтового сбора испытаний

LoadView является частью многих решений в платформе Dotcom-Monitor. Dotcom-Monitor также предоставляет простые инструменты мониторинга для наших коллекций Почтальон. Если у нас есть коллекция интеграционных тестов, используемых для внутреннего тестирования API с Postman, и мы также хотим настроить тесты для запуска из-за пределов локальной сети, мы можем загрузить тесты Почтальона в Dotcom-Monitor. Используя задачу Dotcom-Monitor Postman Collection, мы можем создавать автоматизированные тесты мониторинга с оповещениями об ошибках. Мы можем указать места мониторинга, планировщик мониторинга, фильтры и настроить отчетность на основе результатов мониторинга.

Сбор добавленных запросов HTTP будет неоднократно выполняться с определенной частотой для выполнения последовательности вызовов целевого веб-API. При этом мы будем иметь утверждения, которые были указаны для запросов в Почтальон, который поможет проверить ответы API. Если какое-либо условие, поставленное утверждениями, не выполнено, задача будет помечена как неудачная.

Загрузка Тестирование API с почтальоном: Заключительные мысли

Сообщество разработчиков имеет различные мнения о тестировании API. Мы видели, как Почтальон помогает нам в целом в создании, поддержании и тестировании API с такой легкостью. Мы также рассмотрели пошаговое руководство о том, как мы можем имитировать одновременное тестирование пользователей postman коллекции с помощью LoadView. Наконец, мы рассмотрели, как мы можем автоматизировать этот шаг, используя интеграцию Jenkins с LoadView. Инструменты, необходимые для подчеркивая эти приложения были упрощены в последнее время, и это обеспечивает огромную помощь тестирования сложных систем, которые зависят от внутренних и внешних приложений. Это помогает нам более четко определить узкие места и проблемы.

Начните тестирование API с loadView. Подпишитесь на бесплатную пробную версию и получите $20 в кредитах тестирования нагрузки. Или зарегистрируйтесь на одну из наших частных демонстраций с одним из наших инженеров производительности. Наш инженер провезет вам всю платформу LoadView, а также покажет вам, как интегрировать LoadView в коллекции Postman и автоматизировать шаги с Jenkins.