Выбор ответа Middle API-автотесты обновлено

Данные при параллельном запуске

Вопрос

API-тесты в 8 потоков создают пользователей с email test@example.com и иногда падают с 409 Conflict. Как исправить?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Генерировать уникальные email (суффикс из uuid) и чистить в teardown. Тесты конфликтуют за одни и те же данные.

Варианты ответа

  1. Запускать API-тесты в один поток, чтобы запросы шли по очереди
  2. Перед каждым тестом удалять всех пользователей с тестовым доменом
  3. Ретраить запрос на 409 с паузой, пока сервер не освободит email
  4. Генерировать уникальные email (суффикс из uuid) и чистить в teardownправильный ответ

Разбор

Тесты конфликтуют за одни и те же данные. Уникальные значения дают изоляцию без потери параллельности. Один поток замедлит прогон, массовое удаление сломает соседние тесты, ретрай на 409 не поможет, конфликт останется.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме