Шпаргалка по API и Postman

Всё главное из курса «Postman и API для начинающих», собранное по задачам. В колонке «Урок» — где тема разобрана подробно. Примеры — для учебного API https://dummyjson.com.

HTTP-методы

Метод Что делает Пример Урок
GET получить данные GET /products/1 2
POST создать POST /products/add 5
PUT изменить целиком PUT /products/1 5
PATCH изменить часть PATCH /products/1 5
DELETE удалить DELETE /products/1 5

Коды ответа

Код Что значит Урок
200 OK успех 2
201 Created создано 2
400 Bad Request неверный запрос: не хватает полей, неверный формат 2
401 Unauthorized нужна авторизация: нет токена или он истёк 2
403 Forbidden доступ запрещён: не хватает прав 2
404 Not Found не найдено 2
500 Internal Server Error ошибка на сервере 2

2xx — успех, 4xx — ошибка клиента, 5xx — ошибка сервера.

Части запроса

Часть Пример Где в Postman Урок
метод и адрес GET https://dummyjson.com/products/search слева от строки адреса и в ней 4
параметры ?q=phone&limit=5 вкладка Params 4
заголовки Content-Type: application/json вкладка Headers 4
тело {"title": "Капучино", "price": 220} Body → raw → JSON 5
авторизация Authorization: Bearer <токен> вкладка Authorization → Bearer Token 5

JSON

Запись Что это Урок
{"title": "Чай"} объект: ключ и значение 3
["a", "b"] массив 3
"текст", 9.99, true, null строка, число, логическое, пусто 3
products[0].title поле первого элемента массива 3

Ключи и строки — в двойных кавычках, после последней пары запятой нет.

Переменные и окружения

Запись Что делает Урок
{{baseUrl}}/products/1 подставить переменную в адрес 6
Bearer {{token}} подставить токен 6
pm.environment.set("token", json.accessToken) сохранить значение в окружение 6
pm.environment.get("token") прочитать значение из окружения 6
pm.collectionVariables.set("id", 5) сохранить в переменные коллекции 6

Переменная окружения важнее переменной коллекции с тем же именем. Красная подсветка — переменная не найдена.

Тесты

Пишут во вкладке Scripts → Post-response.

Проверка Код Урок
код ответа pm.response.to.have.status(200); 7
время ответа pm.expect(pm.response.responseTime).to.be.below(1000); 7
тело как объект const json = pm.response.json(); 7
равенство pm.expect(json.id).to.eql(1); 7
тип pm.expect(json.price).to.be.a("number"); 7
больше, не больше .to.be.above(0), .to.be.at.most(5) 7
содержит pm.expect(json.message).to.include("not found"); 7

Шаблон теста:

JavaScript
pm.test("Понятное название проверки", function () {
  pm.response.to.have.status(200);
});

Полезное

Что Где Урок
команда curl для запроса кнопка Code </> справа 4
запустить всю коллекцию меню коллекции → Run 7
коллекция из OpenAPI кнопка Import 8
готовые заготовки тестов Snippets справа от редактора скрипта 7