Стендап Сьогодні 📢 Канал в Telegram @stendap_sogodni
🤖🚫 AI-free content. This post is 100% written by a human, as is everything on my blog. Enjoy!07.03.2023
Пошук помилок методом виключення всього зайвого
При пошуку причини помилки часто радять міняти обережно по одному фактору, а потім повертати все в початковий стан та міняти щось інше. В цілому, це слушна порада, але що якщо система велика, та потенційних факторів неосяжно багато?
Пропоную ще один підхід. Почати видаляти з системи частини, починаючи з найдальшої від місця помилки. Помилка на бекенді? Викидаємо фронтенд. Потім викидаємо вебсервер. Запускаємо модуль в максимальної ізоляції, яку можна розумними витратами часу. Падає тест тільки на CI? Викидаємо зі сценарію CI все, окрім запуску цього тесту.
Далі — дивимося. Якщо помилка відтворюється — чудово, ми звузили поле пошуку. Якщо не відтворюється — значить, не вгадали з місцем-джерелом, пробуємо інше та починаємо спочатку. Якщо код поламався, але по-новому — то, напевно, багато вирізали, та треба дещо повернути.
Коли працюєш з кодом та з системою контролю версій, завжди можна відкотити зміни. Користуймося цим!