Тестирование API

API Знакомство с тестированием

API (Application Programming Interface) — программный интерфейс приложения

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

Современные Application Programming Interface часто принимают форму веб-сервисов, которые предоставляют пользователям (как людям, так и другим веб-сервисам) какую-то информацию. Обычно процедура обмена информацией и формат передачи данных структурированы, чтобы обе стороны знали, как взаимодействовать между собой.

При тестировании (Application Programming Interface) важно учитывать несколько важных аспектов:

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

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

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

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

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

  • GET. Наверное, самый популярный тип запроса. Используется для получения или чтения данных.
  • PUT. Обычно используется для обновления ресурса.
  • POST. Обычно используется для создания нового ресурса.
  • DELETE. Удаляет данные.
  • И другие  

Если мы хотим получить информацию о ресурсе, URI которого http://www.example.com/customers/12345, мы можем послать запрос:

GET http://www.example.com/customers/12345

Если мы хотим обновить ресурс — мы можем послать PUT-запрос:

PUT http://www.example.com/customers/12345/orders/98765   

Обычные GET запросы способен посылать веб-браузер. Для посылки других типов запросов могут потребоваться скриптовые языки или специальные инструменты

Практикуемся с тестирование API:

Для ознакомления использовался сервис  pipedrive.com с открытым интерфейсом эпиай.

Предварительные действия:

  1. Зарегистрировалась на сайте
  2. Получила Token (Меню -> Настройки -> API)

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

  1. Заходим на сайт  Сайт
  2. В поле “Add your API token” добавляем Token из личного кабинета
Личный ключ. Тестирование API
Личный ключ.

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

Например:

Пункт “Deals” в списке соответствует вкладке “Сделки” на сайте 

Удобный мануал по работе с API
Удобный мануал по работе с API

После выбора действия, например “Add a deal”, отобразился список параметров запроса и описание этих параметров.

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

Параметры API. Разнообразные запросы.
Параметры API. Разнообразные запросы.

После заполнения полей валидными данными кликаем Test endpoint и видим:

  1. Информацию о запросе (В формате JSON)
Структура запроса API.
Структура запроса API.
  1. Информацию об ответе.(В формате JSON)

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

В данном случае запрос прошел успешно. Об этом говорит запись “success: true”

Структура ответа.
Структура ответа.
  1. Заходим на наш сайт и видим, что в разделе “Сделки” добавилась запись “test!!!” с данными, которые мы указывали, формируя запрос
Визуальное отображение совершенных операций.
Визуальное отображение совершенных операций.
  1. Если при формировании запроса мы введем данные невалидного типа (например в поле где должно вводиться число, введем строку), тогда мы получим ответ с сервера:

Мы видим, что запрос не прошел (success: false) и информацию об ошибке

Ошибочный запрос API и ответ на него.
Ошибочный запрос API и ответ на него.

2 мысли о “API Знакомство с тестированием”

Добавить комментарий

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.