Iniciar sesión Registro
Anuncios
Tu espacio publicitario
Reserva este slot exclusivo para el periodo elegido.
Comprar publicidad →
Logotipo de la comunidad de telegram - Затишна Галера
Añadido 06 ene. 2025

Затишна Галера

@Zatishna_Galera
Número de suscriptores: 2 704
Fotos: 1,360
Videos: 432
Enlaces: 1,830
Descripción:
Голова Одеського центру розробки DataArt та Delivery Director, капітан Затишної Галери, ділитимуся: завданнями із співбесід (QA/Delivery/Management), статтями, вакансіями, новинами зі світу IT. Контакт: [email protected] ; Patreon: patreon.com/CozyGalley
Fuente

Затишна Галера | ЧарівнийКомпас 🧭1️⃣9️⃣3️⃣ Завдання 193Що таке flakiness в автотестах🤔 ...

Logotipo de la comunidad de telegram - Затишна Галера Затишна Галера @Zatishna_Galera
760 Vistas/Alcance 2025-06-02 09:24 Mensaje №1938
#ЧарівнийКомпас 🧭1️⃣9️⃣3️⃣ Завдання 193Що таке flakiness в автотестах🤔 Flakiness - це нестабільність автоматизованих тестів, якщо дати грубе визначення. Наприклад, тест то проходить, то валиться з незрозумілих причин, навіть якщо в фічі нічого не змінювалося. Існує також поняття flaky-тести - ненадійні тести, на результат яких не можна покладатися, бо він може бути хибним. Чим більше у вас таких тестів, тим менш надійною є автоматизація на проєкті.🔣 Причини flakiness:1️⃣ Нестабільні локатори в UI-тестах: елемент не встиг з’явитися на сторінці, а тест уже намагається з ним працювати, або прив’язка не до статичного локатора, який може змінюватися з кожним запуском.2️⃣ Погана синхронізація: затримки при зміні активності елементів тощо.3️⃣ Асинхронні операції: дія ще виконується, а ви вже перевіряєте результат.4️⃣ Залежність від зовнішніх сервісів (наприклад, API): щось змінилося у виклику конкретного API, і тест далі не проходить.5️⃣ Паралельний запуск і конфлікти даних: кілька тестів використовують один і той самий ресурс (наприклад, користувача) і заважають один одному, впливаючи на результати.🔣 Що з цим робити:1️⃣ Покращити синхронізацію: використовувати очікування за умовами, а не «жорсткі» паузи в секундах (це дуже погана практика).2️⃣ Ізолювати тестові дані: використовувати унікальні дані для кожного запуску й не забувайте очищати їх після тесту.3️⃣ Мінімізувати по можливості залежності від зовнішніх нестабільних сервісів: мокати зовнішні API або використовувати стабільні тестові endpoints.4️⃣ Додати логування та діагностику: flaky-тести важко відслідковувати без нормального логування, що взагалі стосується будь-яких тестів. Логування - ваш друг.5️⃣ Впровадити логування flaky-тестів і аналізувати його: аналізуйте тести після прогону, розбирайтесь, чому вони впали і як це пофіксити.#️⃣ Flakiness - велика проблема для автоматизації, і з нею треба, і можна боротися. Не запускайте цей момент, інакше він буде рости як снігова куля, і у вас просто не буде часу зайнятися цим з розумом.@Zatishna_Galera