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

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

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

Тестирование производительности API — это обширная область. Эта краткая статья поможет вам понять, что, почему и как проводить тестирование производительности API и ознакомить вас с основным жаргоном.

Что такое тестирование производительности API?

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

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

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

Тестирование нагрузки
В нагрузочном тестировании клиент-серверная система между API (сервером) и пользователем (клиентом) имитирует несколько пользователей, одновременно попадающих в API. Эти виртуально созданные пользователи (VU) являются «нагрузкой» в нагрузочном тестировании.

Нагрузочное тестирование отвечает на такие вопросы, как:

  • Как данное количество пользователей веб-сайта повлияет на производительность веб-сайта?
  • Сколько одновременных пользователей может обрабатывать веб-сайт или приложение?
  • Где узкие места в веб-приложении?
  • Каков переломный момент для моего сайта?
  • Когда в системе закончатся ресурсы?

Некоторые другие типы тестирования производительности:

  • Тестирование шипов. Тестирование Spike подвергает программное приложение внезапному увеличению пользовательской нагрузки.
  • Испытание на выносливость. Это проверяет, как программное приложение реагирует на повышенные, длительные уровни пользовательского трафика.
  • Объемное тестирование. Объемное тестирование, также иногда называемое тестированием на флуд, проверяет программное приложение на больших наборах данных, чтобы увидеть, как оно реагирует.
  • Тестирование масштабируемости. Тестирование масштабируемости позволяет увидеть, как ваше приложение или система масштабируется вверх и/или вниз до различных уровней пользователей.

Это был краткий взгляд на «Что». Теперь давайте посмотрим на «Почему».

Почему вы должны проводить тестирование производительности API: примеры внедрения и ресурсы

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

Известное тематическое исследование Feb 2020 UK Heathrow Disruption является ярким примером того, почему нагрузочное тестирование программного обеспечения имеет важное значение. Вы также можете ознакомиться с этой статьей, чтобы узнать больше о важности нагрузочного тестирования в разработке программного обеспечения, и обратиться к этой статье, чтобы понять экономические преимущества API тестирования производительности.

Проще говоря, тестирование производительности API помогает предотвратить простои со всеми соответствующими проблемами, которые вызывают. Теперь давайте поговорим о том, «как» тестирование производительности API.

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

Как провести тестирование производительности API с помощью тестирования LoadView от Dotcom-Monitor

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

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

Как работает LoadView
LoadView использует глобальную сеть серверов Load Injector Servers (LEI) для создания пользовательских нагрузок для тестирования производительности веб-сайта. LoadView предоставляет функциональные возможности для создания и нагрузочных тестов для различных целевых объектов. Вот некоторые из типов нагрузочного тестирования, предоставляемых LoadView:

  • HTTP/S
    Проверьте URL-адрес на доступность, производительность, исправление содержимого, ошибки, неработающие ссылки и многое другое.
  • Сайт
    Имитация параллельной загрузки веб-страницы пользователями. Выбирайте из Chrome, Microsoft Edge и Firefox, а также мобильных браузеров, таких как iOS, Android, Windows и BlackBerry.
  • Веб-приложения
    Создавайте тестовые сценарии с помощью веб-записи EveryStep для проверки веб-приложений от одновременных пользователей, выполняющих определенные действия на реальных компьютерах (Chrome и Edge) и мобильных устройствах.
  • Потоковое мультимедиа
    Проверьте производительность и доступность аудио и мультимедийных потоков.
  • SOAP Веб API
    Проверьте производительность, время безотказной работы и ответы веб-служб SOAP.
  • REST Веб API
    Проверьте содержимое ответа, время безотказной работы и производительность веб-служб REST.
  • Коллекции почтальонов
    Протестируйте веб-API, импортировав коллекции Postman в LoadView.
  • Селен
    Тестируйте веб-приложения, запуская тестовый проект Selenium с тысячами одновременных пользователей из разных мест по всему миру.

Конфигурации нагрузочного тестирования LoadView

Тип нагрузки

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

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

Поведение пользователей
Чтобы смоделировать, как реальные посетители перемещаются по вашему сайту, используется поведение пользователей. Вы можете выбирать между обычными, максимальными или пользовательскими вариантами. При использовании параметра Обычное пользовательское моделирование добавляются случайные задержки в диапазоне от трех до шести секунд для имитации поведения обычных пользователей. Тест выполняется как можно быстрее, когда вы выбираете «максимум». Эту функцию можно использовать для выполнения стресс-тестов в системе и определения того, где и когда она достигает максимальной емкости.

Опция «Custom» дает вам ту же возможность выбора случайных задержек, что и опция Normal, но допускает более короткие и длительные задержки, от нуля до 30 секунд, для большей персонализации.

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

Сводка теста
Администраторы тестов могут просматривать графики, демонстрирующие изменение времени отклика по мере изменения нагрузки и количества пользователей. План выполнения теста, среднее время отклика, количество сеансов, количество ошибок по типу и потребление ЦП каждым из инжекторов нагрузки — вот некоторые из диаграмм, которые вы сможете просмотреть.

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

среднее время отклика

Если вы еще этого не сделали, вы можете начать бесплатную пробную версию платформы LoadView здесь. И если вы хотите получить демонстрацию один на один, закажите время с одним из наших инженеров по производительности. Мы будем рады услышать от вас.