Created
July 25, 2020 08:46
-
-
Save zlocate/a2213bd71e2aaf29939642593d77a721 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Postman по-умолчанию не дает возможности использовать общие функции между-тестами что приводит к необходимости их копировать и голоной боли. | |
| Хотелось бы занести туда свою стандартную либу с хелперами чтобы решить эту проблему. | |
| К сожалению, в Postman нет возможности использовать внешний код за исключением небольшого списка модулей. | |
| Есть 2 решения - | |
| 1) подкидывать выше решение в песочницу Postman (изменяя саму программу) | |
| 2) Использовать обход на базе общий Тестов и хранить текст ваших функций в переменных окружения Postman | |
| Как сделать | |
| Правой на коллекции | |
| Edit | |
| Tests | |
| Вставляем что-то подобное | |
| ``` | |
| // предполагается что переменная уже заполнена и содержит объект из функций | |
| let source = pm.environment.get("utils").replace("\r\n"); | |
| if (source) { | |
| try { | |
| // вместо utils указываете имя глобальной переменной в которой будут доступны ваши функции | |
| eval(`window.utils = ${source}`); | |
| pm.environment.set("utils", ""); | |
| } catch (e) { | |
| console.error(e) | |
| } | |
| } else { | |
| console.log("Не обновлялось"); | |
| } | |
| ``` | |
| Также я рекомедую создать запрос для обновления своей библиотеки | |
| ``` | |
| pm.test("Update env", function () { | |
| let value = pm.request.body.raw.replace("\r\n",""); | |
| pm.environment.set("utils",value); | |
| }); | |
| ``` | |
| Соответственно в теле запроса передаете объект и с вашей "библиотекой" и она обновляется. | |
| Да, есть альтернативный вариант через раннер и подгрузку внешних файлов. Но я на практике часто гоняю тесты руками |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment