Ідея написати щось легеньке про тестування виникла вже давно, проте саме 2022 рік став остаточною краплею, коли я зрозумів — далі відкладати просто не можна. Причин для цього багато, але я спробую зупинитись лише на професійних. Отже — це буде збірка статей для початківців українською мовою та від українського автора. Все більше і більше мене дратувало що, крім англійської (яка часто, на жаль, не підйомна для новачків), я постійно стикався із нестачею освітнього та довідкового матеріалу українською мовою. Доцільність потужного українськомовного простору в професійних (та не тільки) сферах життя лишаю тобі — на розсуд та роздуми. Від себе скажу, що для мене тут питання просте, немає ресурсу — створи. Ти тут, а, отже, значить все зроблено правильно. Щиро вітаю тебе на цих сторінках та бажаю корисного та швидкого шляху, яким ми пройдемось разом!
Олексій Мащиць, QA Evangelist
Що на тебе очікує?
Окрім філософських роздумів про життя та смерть, адже це не філософський трактат. Ми пройдемося темами розробки програмного забезпечення та ролі тестування в ньому. Ти зможеш зрозуміти, чи може це стати твоєю роботою (якщо ти новачок), або заповнити можливі білі плями в знаннях (якщо ти вже працюєш). Також ці статті можуть стати у пригоді як базовий матеріал для підготовки студентів та слухачів курсів. Для інших IT-спеціальностей — це знайомство із тестуванням простою мовою.
Тут ми трохи потренуємось, хоча моя головна мета зараз — дати зрозуміти базові принципи та почати будувати, скажімо так, “мозок тестувальника”, закладати основи для розуміння філософії та “світогляду тестувальника”, особливостей розробки програмного забезпечення. Проводимо аналогії — плануємо будівлю та закладаємо фундамент. Тільки після того, як візьмеш до рук інструменти (деякі прості, деякі достатньо складні), ти будеш розуміти “що до чого”. Я не прихильник одразу саджати пілота-новачка у Боїнг без навчання необхідної фізики, аеродинаміки, інженерних принципів роботи літака. Хто з нас буде спокійним, якщо пілот, який не розуміє, чому літак взагалі злітає, сяде в кабіну та спробує відірватись від землі, дивлячись в інструкцію? Нехай вона і дуже ретельно написана. Ризикнете? То ж бо і воно.
Я також не буду обіцяти, що можна стати фахівцем, прочитавши якісь статті, відвідавши курси, подивившись декілька відео на ютубі. За це б не платили тисячі доларів на місяць провідні (і не дуже) компанії світу, чи не так?
Перш ніж почати, важливо зрозуміти ще одну базову річ. Життя мінливе. IT-сфера — не виключення. Швидкість змін шалена, з’являються та помирають мови програмування, процеси та фреймворки розробки, підходи до зберігання даних, принципи архітектури існування ресурсів в інтернеті. І тестування, як частини переліченого. Тож не шукай тут (і в інших місцях) догм та законів, чогось такого, що можна один раз вивчити та працювати спокійно все життя. Можливо, найбільший кайф в нашій роботі — це постійне самовдосконалення та пошук бодай якихось принципів, що не так швидко змінюються.
Наперед скажу, що використавши науковіший підхід ми, звичайно, можемо виробити деякі загальні принципи, проте такий труд буде зовсім не легким за усіма параметрами. Можемо дійти до того, що є деякі принципи, які можемо використати і при тестуванні програмного забезпечення, і при виробництві ковбаси. Ба більше — я сподіваюсь, що ця тема стане для тебе цікавою згодом і ми повернемось до неї. Щось схоже намагаються знайти та зафіксувати різні професії — розробники, проєктні менеджери, бізнес-аналітики. Але це програма для старших курсів, скажімо так. Хоча, я спробую вже тут закинути декілька вудок. А може, навіть і силу-силенну вудок. Ще і невіди та інші сітки покажу. А рибу? І рибу.