Питання на співбесіді з Cypress (Senior) з відповідями
76 запитань для співбесіди з теми Cypress (Senior) - з правильними відповідями, поясненнями й посиланнями на документацію.
Пройти цей тест- 1.Який головний архітектурний компроміс того, що Cypress працює всередині браузера?
- 2.Коли команді обрати Cypress, а не Playwright?
- 3.Чому Cypress потребує
cy.originдля SSO, а Playwright - ні? - 4.Яка найчастіша першопричина нестабільних тестів Cypress у великих наборах?
- 5.Що дає керування flaky-тестами в Cypress Cloud?
- 6.Що таке «burn-in» для нових чи змінених тестів?
- 7.Як команді відповідально використовувати повтори тестів?
- 8.З чим допомагає Test Replay у Cypress Cloud?
- 9.Як Cypress Cloud балансує spec між паралельними машинами?
- 10.Навіщо ділити дуже довгі spec-файли?
- 11.Як запустити в Cypress лише тести з тегом
@smoke? - 12.Який розумний поділ тестів між PR і нічними запусками?
- 13.Чому інтенсивне мокання мережі може давати хибну впевненість у наборі Cypress?
- 14.Як тримати фікстури синхронними зі справжнім API?
- 15.Як має працювати підготовка бази на тест у паралельному наборі Cypress?
- 16.Яка пастка
cy.sessionбез функціїvalidate? - 17.Як тестувати застосунок за стороннім SSO-провайдером?
- 18.Як вирішити баланс між компонентними й end-to-end тестами?
- 19.Що врахувати команді при міграції з Cypress на Playwright?
- 20.Що робить власну команду доброю у великій кодовій базі Cypress?
- 21.Від чого захищає
eslint-plugin-cypress? - 22.Як організувати Cypress у монорепо з кількома застосунками?
- 23.Навіщо запускати Cypress на preview-деплоях кожного pull request?
- 24.На що впливає
numTestsKeptInMemory? - 25.Чому в CI можна вимкнути запис відео?
- 26.Як сторонні скрипти на кшталт чат-віджетів роблять тести Cypress нестабільними?
- 27.Чим ризикований
chromeWebSecurity: false? - 28.Чому функції на WebSocket складніше тестувати в Cypress?
- 29.Як service workers заважають підміні мережі в Cypress?
- 30.Як зробити тести з датами стабільними в різних часових поясах?
- 31.Як працювати з feature flags у тестах Cypress?
- 32.Яку проблему розв'язує
experimentalMemoryManagement? - 33.Яке налаштування звітів добре працює для Cypress у дашбордах CI?
- 34.Як тестувати в різних браузерах, не сповільнюючи кожен PR?
- 35.Які обмеження мобільного тестування через
cy.viewport? - 36.Як закріпити перевірки доступності в наборі Cypress?
- 37.Чи добра ідея блокувати злиття за покриттям коду з Cypress?
- 38.Як захистити тестові акаунти, які використовує Cypress?
- 39.Що робить набір Cypress важким для підтримки з часом?
- 40.Як вирішити, які сценарії варті E2E-покриття в Cypress?
- 41.Яка метрика найкраще показує, чи допомагає набір Cypress команді?
- 42.Як тестам працювати із застосунками з активною клієнтською маршрутизацією?
- 43.Чому навіть у тестах лише для CI варто уникати фіксованого
cy.waitперед перевіркою? - 44.Як перевірити дружнє повідомлення про помилку API без справжнього бекенду, що падає?
- 45.Чому перевірки варто тримати в тестах, а не у власних командах?
- 46.Що стається, коли тести ділять одного користувача, чиї дані змінюються?
- 47.Як добре тестувати листи, які надсилає застосунок?
- 48.Як тести Cypress можуть перевіряти події аналітики без справжнього трекінгу?
- 49.Який компроміс автоматичного очікування Cypress на завантаження сторінок?
- 50.Як тримати під контролем час запуску набору Cypress, коли він росте?
- 51.Чому тести Cypress не мають залежати від схожих на продакшен даних на staging?
- 52.Як діяти з відомим багом, через який тест падає?
- 53.На що дивитися на рев'ю нового тесту Cypress?
- 54.Як тестувати завантаження файлів у хмарне сховище з підписаними URL?
- 55.Чому тест Cypress може проходити локально, але падати в CI з тим самим кодом?
- 56.Яка користь запускати той самий набір для кількох мов?
- 57.Як тестувати дашборди з великою кількістю запитів, щоб вони лишалися швидкими?
- 58.Яка ознака того, що в наборі Cypress забагато E2E-покриття?
- 59.Як ефективно тестувати права для багатьох ролей?
- 60.Що робить
Cypress.on('uncaught:exception'), що повертаєfalse, і чому обережно? - 61.Як тестувати довгі фонові задачі, запущені з UI?
- 62.Як виглядає стабільна політика селекторів для команди?
- 63.Як Cypress може ловити помилки гідратації чи виконання, що не ламають видимий UI?
- 64.Що робити з тестом Cypress, що постійно повільний?
- 65.Як тестувати UI з перетягуванням у Cypress?
- 66.Коли тестування UI на canvas у Cypress практичне?
- 67.Як тестам Cypress працювати з випадковістю в застосунку, як-от перемішані списки?
- 68.Чим ризиковані дуже великі фікстури?
- 69.Як перевірити, що чутливі дані не зберігаються в localStorage?
- 70.Як не дати тестам випадково вдарити в продакшен?
- 71.Яка здорова модель володіння E2E-тестами?
- 72.Як перевірити, що застосунок працює з повільною мережею на кшталт 3G?
- 73.Чому тестування лише в Electron (за замовчуванням) не завжди досить?
- 74.Який головний ризик читати базу через
cy.taskу перевірках? - 75.Як поводитися зі скриншотами падінь з погляду приватності?
- 76.Коли окремий набір API-тестів кращий за тести на
cy.request?