Каждый может использовать Postman, но многие используют его просто как простой HTTP-клиент. В большинстве случаев этого достаточно, поскольку http-вызовы являются его основной функцией.
Итак, что еще стоит сказать о таком «маленьком» инструменте?
После разработки restful-функции бэкенд должен завершить самотестирование и дождаться совместной отладки с фронтендом. Это самотестирование включает в себя модульное тестирование и тестирование интерфейса. Если одно из них завершено, трудоемкая совместная отладка может быть значительно сокращена, но оба теста часто не выполняются должным образом. Более вероятно, что из-за проблем с копированием интерфейса и установкой значений, а также из-за предпочтения использования операций с графическим интерфейсом окончательное тестирование интерфейса и совместная отладка интерфейса будут выполняться параллельно.
Если вы хорошо справились с самооценкой, то можно рассмотреть некоторые детали, например:
environment
Чтобы избежать повторной модификации хоста при тестировании различных сред.collection runner
Обрабатывайте некоторые небольшие онлайн-данные через интерфейс, устраняя необходимость написания кода для обработки.Короче говоря, почтальон предоставляет удобный и быстрый вариант WYSIWYG. Говорят, что многие навыки не являются чрезмерными.
collection
Это набор запросов. Он мало чем отличается от обычной папки и к нему можно относиться так же.
collection` Скрипты могут быть определены и запущены `collection runner
collection` Вы можете продолжать рекурсивно создавать подпапки. Эти подпапки: `collection` тот же сценарий могут быть определены и запущены `collection runner
variable
то есть переменные, позволяющие ссылаться на них в collection、request、script Повторное использование в другом месте. Цитировать можно с помощью заполнителей, например {{Имя переменной}}
, поэтому вам нужно только изменить variable
стоимость, все {{Имя переменной}}
Все места будут изменены одновременно.
Глобальные переменные и переменные среды можно настроить непосредственно в правом верхнем углу почтальона.
collection Переменные нужно щелкать collection
> Variables добавить
Переменная данных поступает из внешнего файла и обычно используется в средстве сбора данных.
Локальные переменные определяются в скрипте и имеют самый короткий жизненный цикл.
можно понимать как особенный variable
коллекция Поскольку некоторые переменные, такие как url В разных средах используются разные значения, чтобы избежать повторных изменений. variable
Стоимость variable
определено в environment , переключитесь в правом верхнем углу.
нравиться {{url}}/api/resource/id=3
мы можем collection
、Каждая папка、request
Дайте определение сценарию.
Скрипты делятся на две категории: Предварительный запрос и Пост-ответ. Как следует из названия, никаких дополнительных объяснений не требуется.
request
Сначала выполню себя и текущую по порядку папка、родительская папка...collection
из Pre-request сценарий, а затем выполнить request
, а затем выполнить в обратном порядке Post-response Скрипт.
поэтому, Pre-request Скрипты обычно отвечают за обработку подписей, шифрование данных, предварительную обработку данных и т. д.; Post-response Расшифровка обработки скрипта、Тестовые утверждения и т. д.。Официальный сайт Есть много случаев для справки.
Давайте повторим то, что мы сказали ранее variable
из диапазона приоритетов, вы можете использовать скрипт для его проверки
// global var 'score' = 0
// collection var 'score' = 1
// environment var 'score' = 2
// first request run
console.log(pm.variables.get('score')); // outputs 2
console.log(pm.globals.get('score')); // outputs 0
console.log(pm.collectionVariables.get('score')); // outputs 1
console.log(pm.environment.get('score')); // outputs 2
// second request run
pm.variables.set('score', 3);//local var
console.log(pm.variables.get('score')); // outputs 3
// third request run
console.log(pm.variables.get('score')); // outputs 2
Место: рабочее место Нижний правый угол, контекстное меню папки. > Run Folder
Примечание: бесплатную версию можно запускать не более 25 раз в месяц, чего вполне достаточно.
Требует особого внимания из-за
поддерживать csv и json Два формата, примечание, json Формат не json Сообщения импортируются напрямую,Приведите пример,Следующие два формата имеют одинаковый эффект.
id,name
1,alice
2,bob
[
{"id":"1","name":"alice"},
{"id":"2","name":"bob"}
]
postmanверхний левый уголиз import Функция предоставляет несколько способов импорта
только отладка небольшого количества времени интерфейса,Нет необходимости в инструментах захвата пакетов,Вы можете использовать собственные инструменты разработчика браузера для быстрого импорта интерфейса.
Таким же образом вы также можете использовать postman функция изCode быстро генерирует curl、wget Заказ.
Иногда,для удобства,Мы хотим поместить сообщение JSON в одну строку.,легко request
Прямая цитата здесь, содержимое csv-файла нравиться ниже.
json
{"id":"1","name":"alice"}
{"id":"2","name":"bob"}
Очень жаль, почтальон не получится разобрать,Причина в том, что двойные кавычки и запятые имеют особую логику в csv.,Мы можем использовать следующее решение: нравиться
json
"{'id':'1','name':'alice'}"
"{'id':'2','name':'bob'}"
// Восстановить измененные одинарные кавычки в двойные кавычки
let s = pm.iterationData.get("json").replaceAll("'", '"');
// Удалите лишние двойные кавычки до и после и установите их как сообщение запроса.
pm.request.body.raw = s.substring(1, s.length - 1);
использовать collection runner Наконец, иногда вы можете столкнуться с ситуациями частичного отказа, но postman Нет функции повторной попытки только неудавшихся данных. Необходимо удалить неудавшиеся данные отдельно и повторить попытку.
и collection runner Предоставляет функцию экспорта, которая не включает сообщения запроса и ответные сообщения. Однако можно обнаружить, что экспортированные данные содержат URL-адрес и тестовое имя, поэтому вы можете здесь повозиться, экспортируя ключевые данные с помощью следующего метода. , а затем извлекает его с помощью обычных правил. Не удалось получить данные, запустите снова. collection runner
pm.test(pm.iterationData.get("billCode"), function () {
var jsonData = pm.response.json();
pm.expect(jsonData.success).to.eql(true);
});
postman из response body
не могу пройти post-response
Модифицировать скрипт и выводить его напрямую в консоль всегда неудобно. На этом этапе мы можем использовать postman из visualize функция для аппроксимации
// использовать<pre>Ярлыки могут сохранять форматирование текста.,Конечно, вы также можете реализовать более сложные функции HTML самостоятельно.
pm.visualizer.set('<pre>{{json}}</pre>', {
json: decryptJson
});