Ваш API-фреймворк
Вопрос
Расскажите, как устроен фреймворк API-автотестов, который вы писали или поддерживали.
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Стек: язык, HTTP-клиент, раннер, валидация схем
Слои: клиенты, модели, фикстуры и фабрики данных, тесты
Проверки: статус, тело, схема, побочные эффекты, негативные
Данные: создаются тестом, уникальны, удаляются в teardown
Логирование запросов и ответов в отчёт, конфиг окружений
Что могут спросить следом
- Как вы проверяете схему?
- Как тестируете асинхронные операции (очередь, фоновая задача)?
- Как авторизуетесь?
Разбор
Образцовый ответ: «Python, httpx и pytest. Над httpx тонкий слой: базовый клиент с авторизацией и логированием каждого запроса и ответа в Allure, на каждый сервис свой клиент с методами вроде create_order. Ответы валидирую моделями pydantic, это сразу и схема, и удобный доступ к полям. Данные создают фабрики-фикстуры, имена уникальны, после yield всё удаляется. Проверяю точный статус, важные поля, схему и побочный эффект через GET. Негативные кейсы параметризую. Асинхронные операции жду поллингом с таймаутом. Окружение выбирается опцией --env, секреты из переменных CI»).
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.