TGViewer
Bug or Defect? Bug or Defect? @bugordefects · 2.56K subscribers
Post #367 715
Bug or Defect? Привіт банда) Як і обіцяв, сьогодні трошки про ту тему, яка чомусь часто пролітає мимо, скрипти в Postman Pre-request і Tests. Але як казав один мудрий QA, якщо у тебе ріквести йдуть у флоу, не використовувати параметризацію це просто злочин. І я повністю…
Привіт, банда! 👋

Як і обіцяв, сьогодні розповім про ті штуки, які виглядають страшно, але на ділі, просто must have, якщо хочеш бути не просто тикальщиком у Postman, а QA з повагою до свого часу )

Ну ось коротенько вам про postman.setNextRequest() це коли треба динамічний флоу
Ідея яка, умовно ти хочеш в залежності від відповіді переходити до іншого запиту. Це як if/else в коді, тільки в Postman.
if (pm.response.code === 401) {
postman.setNextRequest("Auth Request");
} else {
postman.setNextRequest("Main Flow Step 2");
}


Як це працює, після поточного запиту Postman автоматично викликає вказаний. Можна реалізовувати умовну логіку, якщо токен не валідний, авторизуйся, якщо все ок, йди далі.

І так працює тільки в Runner, не в одиночному запуску, але я може шось не знаю і вже змінилось це)

pm.iterationData, це для Data-Driven тестування
Умовно у вас є колекція запитів, і треба запускати їх з різними наборами даних (логіни, email-и, конфігурації).

Робиш CSV або JSON з даними (типу users.csv)
login,email,password

qa_user1,user1@example.com,qwe123
qa_user2,user2@example.com,asd456



І ось у скриптах використовуєш
pm.iterationData.get("login")

pm.environment.set("test_login", pm.iterationData.get("login"));
pm.environment.set("test_email", pm.iterationData.get("email"));
pm.environment.set("test_password", pm.iterationData.get("password"));

І кожен запуск буде бігти з новими даними

Як їх можно комбінувати? впринцепі не дуже складно але треба зрозуміти логику

ну ось вам приклад реального флоу
Тестуємо створення акаунта, авторизацію, запит до захищеного ресурсу
ЗАпис Created User
const user = {
login: pm.iterationData.get("login"),
email: pm.iterationData.get("email")
};
pm.environment.set("test_login", user.login);
pm.environment.set("test_email", user.email);


Дали запит на логін.
const login = pm.environment.get("test_login");

pm.test("Логін успішний", () => {
pm.response.to.have.status(200);
const res = pm.response.json();
pm.environment.set("access_token", res.token);
});

postman.setNextRequest("Отримати Профіль");


запит на отримання того чи іншого профілю
pm.test("Профіль OK", () => {
pm.response.to.have.status(200);
});


Поінт який, Якщо маєш 2+ ріквести, роби з них флоу.
Якщо тестуєш багато різних даних, не копіпасти руками, а юзай pm.iterationData.

Це не full-scale автомейшн, але це вже QA, який поважає свій час

Сподіваюсь корисно) якщо так ставьте серденько, задавайте питання залюбки відповім у вільний час.

Може ще хочете продовження з більш складними прикладами (pre-request, custom utils, або інтеграція з Newman)?

Всіх Обняв, Гарного вечора вам 🤗🤗🤗
  • 🔥 23
  • ❤‍🔥 5
  • 👍 3
  • ❤ 1
  • ⚡ 1
  • 🥴 1
More from @bugordefects
  1. Oct 16, 2026Post #965
  2. Oct 13, 2026Друзі привіт - як ваш день?) Сподіваюсь ви та ваші близькі в безпеці. Ну шо, продовжимо на…
  3. Oct 8, 2026Друзі привіт - як ваші справи? сподіваюсь ви в безпеці. Так я думаю є багато хто любить по…
  4. Oct 7, 2026Друзі привіт - я сподіваюсь ви всі в безпеці і ваші близкі теж. Я дуже приємно вражений ві…
  5. Oct 3, 2026Друзі привіт, ну шо, відпочиваєте від тестування?) А я як завжди, зранку кава, налаштовую…
  6. Oct 1, 2026АНОНС❤️❤️❤️ Друзі привіт, як ваш день?) Сподіваюсь ви та ваші близькі в безпеці. Ну що, це…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →