В обшем при создании и проверки пользователя в разделе POST возникла крайне важная необходимость удалить его(т.е. id пользователя) после проверки(как в коде это осуществить во вкладке test-- я не знаю ) !
Обычно я копирую из свагера урл, затем вставляю его в постман, осуществляю проверки, затем в ручную в свагере перехожу в delete и там в ручную его удаляю вводя id (очень тяжело я устал .)
Как это можно реализовать в Postman ? пожалуйста помогите !
Для того чтобы удалять какой либо id из URI запроса этот id должен быть задан переменой
- Пример: http://v1/restful/user/{{userId}} (надо заключать в такие ldjqyst скобки {{}})
- Для инициализации переменой до выполнения запроса в вкладке (Pre-request-script) нужно использовать следующие выражение postman.setGlobalVariable(“userId”, “userIdValue”); userIdValue - в это поле нужно подставлять зачение id
- Для удаления значения из переменой после выполнения запроса в вкладке (Tests) нужно использовать выражение postman.clearGlobalVariable(“userId”);
Если же Вам просто нужно удалять id Вашего пользователя из базы данных, Вы можете выполнить DELETE запрос из POSTMAN просто выберите необходимый метод из выпадающего списка
http://joxi.ru/MAjbw1ncvkGVxA
а можете более подробно описать как создать переменную !
У вас урл выглядит таким образом http://v1/restful/user/{{userId1}} - где {{userId1}} —это что и от куда взялось
Можете еще раз более подробно обьяснить что Вам нужно сделать?
По шагам:
- Запрос POST которым вы создаете пользователя в БД и получаете его id
- Запрос GET с id из POST запроса который Вам возвращает данные по пользователю из БД (для проверки)
- Запрос DELETE с id из POST которым вы хотите удалять пользователя из БД
Я правильно представляю себе последовательность Ваших действий?
Простите Дмитрий за долгую обратную связь!
Итак. мне необходимо создать пользователя в POST и сразу же вытащить его id (он присваивается в базе автоматически и последовательно. Например прошлому пользователю был присвоен 145; значит этому будет присвоен 146) и затем его же удалить из базы !
В ручную это 2 запроса Post на создание, Delete на удпаление —повторюсь, мне же нужно узнать как осуществить это в одном запросе (скриптами это понятно но я не понял как из респонса хедеров вытащить id созданного пользователя и как записать его на удаление в этом же запросе.
Сейчас же я умею проверять просто ключ и значения (только тела ответа).
И 2 вопрос! В POST надо создать пользователя и использовать его данные в PUT запросе ( можете
Заранее Спасибо!
Первый запрос:
POST http://v1/restful/user/ (пример)
body:
{
firstName:“Dmytro”,
secondName: “Komaryst”
}
Response: (пример)
{
Data:
{
id: 123,
message:“Created”
}
}
в окошке Test пишете такой код:
//это нужно чтобы перевести ответ из строки в объект
var responseJSON;
try {
responseJSON = JSON.parse(responseBody);
}
catch (e) {}
//это проверит что сервер дал положительный ответ (может быть 200)
tests[“Response code is 201”] = responseCode.code === 201;
//это проверит что в в теле ответа есть параметр “id”
tests[“Body has required parameters”] = responseJSON.hasOwnProperty(‘id’);
//это запишет id из ответа в глобальную переменную (у Вас может быть другой путь к свойству объекта, не Data.id а например просто id)
if (responseJSON.Data.id) {
pm.globals.set(“id”, responseJSON.Data.id);
}
Второй запрос:
DELETE http://v1/restful/user/{{id}}
{{id}} - в эту переменную автоматически подставится из прошлого запроса
Если дадите пути и тело ответа для POST метода, могу написать Вам тестовый скрипт в Postman и сбросить на Вашу почту