Какие снипеты использовались в Postman
Что проверяют
Писали ли вы скрипты в Postman руками или только нажимали «Send». Снипеты здесь повод поговорить о pm API, переменных и о том, как коллекция превращается в автотесты. Следом обычно просят написать проверку тела ответа или связать два запроса через переменную.
Как отвечать
Начните с того, что снипеты это готовые фрагменты кода на боковой панели редактора скриптов: в новых версиях вкладка называется Scripts и делится на Pre-request и Post-response, в старых была вкладка Tests. Затем назовите те, что реально использовали, и что они генерируют:
- Status code:
pm.test(...)сpm.response.to.have.status(200); - Response time:
pm.expect(pm.response.responseTime).to.be.below(200); - JSON value check: разбор тела через
pm.response.json()и сравнение поля черезpm.expect, внутри это Chai; - Set/Get variable:
pm.environment.set,pm.collectionVariables.set,pm.globals.get, чтобы достать токен илиidиз ответа и передать в следующий запрос; - Send a request:
pm.sendRequestв Pre-request, чтобы получить токен перед основным запросом; - Content-Type header check:
pm.response.to.have.header("Content-Type").
Потом покажите, что вы выросли из снипетов: проверка контракта через pm.response.to.have.jsonSchema(schema), общие скрипты на уровне коллекции или папки вместо копипасты в каждый запрос, прогон коллекции в CI через Newman или Postman CLI с отчётом. Вопрос про ваш опыт, поэтому приведите свой пример: какую цепочку запросов автоматизировали и сколько ручных проверок это заменило. Если писали только проверки статуса, так и скажите и покажите, что понимаете следующий шаг.
Где спотыкаются
Пишут тесты старым синтаксисом tests["..."] = ... и responseBody. Он давно помечен устаревшим, и на собеседовании это выдаёт опыт по старым статьям.
Проверяют только статус 200. Сервер может вернуть 200 с ошибкой в теле или пустым массивом, поэтому нужны проверки полей и схемы.
Путают области видимости переменных: кладут токен в globals, а коллекцию запускают с другим окружением, и у коллеги тест падает. Ещё одна ловушка: тесты зависят от порядка запросов и ломаются, когда запускают одну папку.