Що таке E2E тестування?
E2E (end-to-end) тестування — перевірка повного користувацького сценарію на зібраній системі: тест відкриває браузер, реєструється, додає товар у кошик, оплачує й переконується, що замовлення зʼявилося. Усі компоненти при цьому працюють по-справжньому.
Цінність E2E в тому, що він перевіряє продукт так само, як ним користується людина, і ловить проблеми, невидимі на інших рівнях: непрацююча кнопка, зламаний редирект, конфлікт фронтенду з новою версією API.
Плата — швидкість і крихкість. E2E-тести йдуть хвилинами, залежать від оточення й падають через дрібні зміни верстки. Тому їх тримають небагато: лише ключові сценарії, що приносять гроші, а решту покривають швидшими рівнями.
Повʼязані терміни
Selenium — інструмент для автоматизації браузера: він дозволяє програмно відкривати сторінки, клікати по елементах, вводити текст і перевіряти вміст. На ньому пишуть автотести вебінтерфейсів на Java, Python, C# та інших мовах.
PlaywrightPlaywright — сучасний інструмент Microsoft для автоматизації браузерів та E2E-тестування. Він керує Chromium, Firefox і WebKit одним API та з коробки розвʼязує головний біль автотестів — нестабільність через тайминги.
Integration TestingІнтеграційне тестування перевіряє, як кілька компонентів працюють разом: застосунок і база даних, сервіс і зовнішнє API, два мікросервіси між собою. Окремо кожна частина може бути справною, а на стику все одно виникне помилка.
Test AutomationАвтоматизація тестування — написання програм, які самі виконують перевірки й порівнюють результат з очікуваним. Такі тести запускають за кожної зміни коду, щоб швидко помічати поломки у вже працюючій функціональності.
Regression TestingРегресійне тестування — повторна перевірка вже працюючої функціональності після змін у коді. Його мета — переконатися, що нова функція чи виправлення бага не зламали нічого з того, що раніше працювало.