Regression Obsession

Час свіжих та актуальних новин 😉 На QAFest 2018 однією з найкрутіших доповідей була – “Regression Obsession” від одного з найкрутіших спікерів – Michael Bolton

Роздумуючи про автоматизацію тестування, я згадав доповідь та вирішив передивитись (і вам раджу). Власне, Майкл, світове світило тестування, підіймає тему, достойну холівару – manual vs automation testing.

Якщо розібрати доповідь тезисно, то
🔬 тестування може бути поверхневе чи глибоке – в першому випадку ми репортимо симптоми. Цей підхід не вимагає крутих навичок, зусиль, підготовки, часу чи спеціальних застосунків. Глибоке ж тестування вимагає серйозного підходу, розуміння продукту, часу, підготовки і роботи в команді
🤖 говорити – автоматизація тестування – неправильно. Радше – автоматизація перевірок, оскільки наш код перевіряє інший код. Тестування ж по суті процес складніший, оскільки тестери не тільки перевіряють конкретні умови – а оцінюють продукт в цілому і помічають те, що може і не бути формальним багом, але бути негарним чи незручним, тобто накладають свій власний досвід
🧠 аргумент ЗА – автоматизовані тести проходять регресію швидше за людину. Контраргумент – людський мозок в рази швидший у сприйнятті продукту в цілому, а не окремих його характеристик
❌ з рештою, все зводиться до одержимості GEMPOB – GEtting Machines to Press their Own Buttons. Ми дозволяємо машинам натискати свої ж власні кнопки, розраховані на людей, робимо тести заради тестів, а не для забезпечення якості
💰 “але ж автоматизоване регресійне тестування економить гроші!” – далеко не завжди – треба рахувати ROI (до речі, напишіть, чи вам цікаво дізнатись як) і автоматизація завжди вимагає грошей на спеціалістів, дебаг, підтримку, тули та середовища.
🎯 і якщо кожний білд/версія містить велику кількість багів, що потребує великого регресійного тестування, це значить що автоматизація вам не допоможе – оскільки лише викриє симптоми. Майкл же пропонує в такому випадку фіксити причину – неоптимальні процеси, відсутність документації, погану архітектуру, неправильне планування.

Власне, прослухавши доповідь рік тому я подумав, що Майкл перебільшив деякі проблеми автотестування (я ж сам автоматизатор!). Та сьогоднішній я повністю з ним згоден – автоматизація – не чарівна пілюля, що лікує від багів – це ДОДАТКОВИЙ спосіб застрахувати себе від людських помилок. Хороший процес дасть більше користі при менших витратах. Автоматизацію точно варто використовувати там, де її корисність поза всяким сумнівом, наприклад: тестування API, продуктивності, генерація даних.

А що ви думаєте?

11 March 2020
Автор: 
Oleksii Ostapov

Leave a comment

Leave a Reply