Выбор ответа Senior Page Object и архитектура обновлено
Билдер тестовых данных
Вопрос
Зачем нужен билдер тестовых данных с значениями по умолчанию, например build_user(role="admin")?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Тест задаёт важные для него поля, остальное валидно по умолчанию. Билдер делает намерение теста явным: видно, что важна роль, а не имя и телефон.
Варианты ответа
- Чтобы все тесты использовали одного и того же подготовленного пользователя
- Чтобы не создавать данные в базе: билдер подставляет объект в память API
- Чтобы данные генерировались случайно и каждый запуск был непохож на прошлый
- Тест задаёт важные для него поля, остальное валидно по умолчаниюправильный ответ
Разбор
Билдер делает намерение теста явным: видно, что важна роль, а не имя и телефон. Когда в модель добавят обязательное поле, достаточно поправить билдер. Он не заменяет создание в базе (это делает API-клиент или фабрика), не делает пользователя общим и может использовать случайные значения с фиксированным seed.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.