Чому е2е тестів не повинно бути багато?
Тому що E2E-тести найдорожчі, найповільніші і найкрихкіші серед усіх типів тестів.
Причини
- Повільні прогони Кожен тест піднімає браузер, переходить сторінками, чекає на рендер, виконує реальні дії. Один тест може займати секунди або десятки секунд, це в десятки разів повільніше за юніти.
- Висока вартість підтримки Найменші зміни в інтерфейсі, текстах, верстці або мережевих сценаріях можуть ламати тест. Чим їх більше, тим більше часу йде на полагодження.
- Залежність від оточення E2E залежать від мережі, бази, API, інфраструктури. Будь-яка нестабільність робить їх flaky. Масові E2E = масові хибні падіння.
- Перекривають одні й ті самі сценарії E2E часто перевіряють схожі користувацькі флоу. Якщо їх багато, з'являється дублювання, яке не додає цінності, а лише сповільнює процес.
- Вбивають швидкість команди Довгі прогони → тривалий feedback loop → повільне ухвалення рішень → сповільнення розробки.
Суть: E2E мають покривати лише ключові користувацькі сценарії. Іншу перевірку (логіка, інтеграції, стани) вигідніше закривати юніт- і інтеграційними тестами, тому що вони швидші, стабільніші й дешевші.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.