Size: a a a

Postman | Community

2019 July 09

RS

Robert Smith in Postman | Community
источник

TS

Tata Smith in Postman | Community
Nick Verbitsky
const uuid = require("uuid");
const email = `test+${uuid()}@gmail.com`;
pm.environment.set("email", email)
Попробовала, коллеги, пишет TypeError: Cannot read property ‘set’ of undefined
источник

NV

Nick Verbitsky in Postman | Community
Tata Smith
Попробовала, коллеги, пишет TypeError: Cannot read property ‘set’ of undefined
Можешь скриншот сделать?
источник

NV

Nick Verbitsky in Postman | Community
Что в коде и что в консоли?
источник

TS

Tata Smith in Postman | Community
источник

NV

Nick Verbitsky in Postman | Community
А код?)
источник

TS

Tata Smith in Postman | Community
источник

NV

Nick Verbitsky in Postman | Community
globals
источник

TS

Tata Smith in Postman | Community
Super
источник

TS

Tata Smith in Postman | Community
Спасибо больше
источник

TS

Tata Smith in Postman | Community
Под вечер уже глаза не Алле ))0
источник

TS

Tata Smith in Postman | Community
👻 всех благ и радости)))
источник

TS

Tata Smith in Postman | Community
Все заработало
источник

NV

Nick Verbitsky in Postman | Community
👍
источник
2019 July 11

KT

Katerina Tsyvis in Postman | Community
@nverbitsky , когда там следующий курс по веб-сервисам?)
источник

NV

Nick Verbitsky in Postman | Community
Katerina Tsyvis
@nverbitsky , когда там следующий курс по веб-сервисам?)
В лс.
источник

SY

Sergey Yankevich in Postman | Community
Всем доброго дня. У меня такой вопрос. Есть задача по автоматизации тестирования API веб-сервиса. Всего есть чуть больше дюжины различного рода запросов, каждый из которых содержит в себе очень обширный функционал описывающий ту или иную операцию. На основе этих операций имеется огромное количество разнообразнейших сценариев, включающих в себя от одного, до нескольких десятков запросов на выполнение тех или иных операций.
Чтобы написать более менее универсальный код для автоматического тестирования всего этого разнообразия, я решил написать классы, содержащие методы для тестирования всего и вся, по одному для каждой операции.

Вопрос у меня такой: есть ли какая-либо возможность сделать класс видимым на всю коллекцию сценариев. Что бы в тестах для запроса я мог обращаться к этому классу как библиотеке? Создать объект, скормить ему тело респонса и выполнить тестовые методы.

Я пробовал объявлять функции в блоке tests коллекции, но увы, это не делает функции видимыми в блоке tests запросов этой коллекции. То же самое касается и pre-requested scripts. То есть пространство имен этих блоков покрывает только сами блоки и больше ничего.
источник

SY

Sergey Yankevich in Postman | Community
Получилось найти решение через забивание кода в переменные окружения, локальные или глобальные, с последующим использованием по следующему примеру

postman.setEnvironmentVariable("utils", () => {
   var myFunction1 = () => {
       //do something
   }
   var myFunction2 = () => {
       let func1Result = myFunction1();
       //do something else
   }
   return {
       myPackage: {
           myFunction1,
           myFunction2
       }
   };
});

And then use your functions in a later test :

let utils = eval(environment.utils)();
utils.myPackage.myFunction1(); //calls myFunction1()
utils.myPackage.myFunction2(); //calls myFunction2() which uses myFunction1()
источник

SY

Sergey Yankevich in Postman | Community
Но я все ещё ищу более изящьное решение, нежели запихивание нескольких сотен строк кода в глобальную переменную.
источник

NV

Nick Verbitsky in Postman | Community
Sergey Yankevich
Получилось найти решение через забивание кода в переменные окружения, локальные или глобальные, с последующим использованием по следующему примеру

postman.setEnvironmentVariable("utils", () => {
   var myFunction1 = () => {
       //do something
   }
   var myFunction2 = () => {
       let func1Result = myFunction1();
       //do something else
   }
   return {
       myPackage: {
           myFunction1,
           myFunction2
       }
   };
});

And then use your functions in a later test :

let utils = eval(environment.utils)();
utils.myPackage.myFunction1(); //calls myFunction1()
utils.myPackage.myFunction2(); //calls myFunction2() which uses myFunction1()
Только так.
источник