«Для того, щоб стати вправним тестувальником, потрібно постійно навчатися і… мати бажання щось ламати», - вважає Software Engineer in Test Дмитро Коритов з Харківського офісу ЕРАМ. Про специфіку QA Automation, перспективи цієї професії та основні вимоги до новачків, які обрали цю спеціальність, Дмитро розповів на IV ЕРАМ Junior's Online Conference для початківців. А ми записали для вас основні тези цього виступу.
- Напрям QA було започатковано доволі давно, коли програми та додатки ще були записані на дискетах, а в ІТ працювали виключно розробники. Компанія Compaq випустила черговий продукт, але через деякий час користувачі виявили несправний функціонал. Девелопери переглянули код та зрозуміли, що припустилися суттєвої помилки та вчасно не зауважили цей баг. Це спричинило неабиякі збитки для компанії, адже весь наклад дискет довелося перевипускати. Подібний випадок не був поодиноким у масштабі індустрії, тому невдовзі виник напрям QA.
- Прямий обов’язок QA спеціаліста – знаходити дефекти через порівняння очікуваного та отриманого результатів.
- Тестування проводиться протягом усього життєвого циклу продукту. Проте, вартість виправлення бага на стадії проектування і розробки значно нижча, ніж після релізу. Виявлення бага на пізніх етапах спричиняє збитки та потенційні проблеми для компанії. Саме тому тестування було і залишається затребуваною функцією. З часом перелік обов’язків тестувальників розширюватиметься.
У чому різниця між QA Automation спеціалістами та Manual QA?
- Перші пишуть код, який тестуватиме інший код, написаний розробниками.
- Для перших кроків в автоматизації тестування початківцям потрібно володіти основними поняттями з теорії мануального тестування (визначення тестування, його види, тест-план, баг, тест-стратегія тощо), та хоча б одну з мов програмування, наприклад, Java чи C#, на базовому рівні. Після початку роботи на реальних проектах ви часто стикатиметеся із ситуацією, коли в одному стрімі тести пишуться на Java, а в іншому – на JavaScript. Круто, якщо спеціаліст володіє обома мовами та зможе переключатися між потоками.
- Наразі найтрендовіші мови програмування для QA Automation – це Java, JS, C# та Python. Перехід з Java на C# або навпаки – не складний, а ось Python значно відрізняється від двох інших.
- Окрім мов програмування, сучасний QA Automation спеціаліст працює з веб-драйвером з Selenium Framework.
- Роль англійської мови у будь-якій професії в ІТ індустрії – величезна. І тестування – не виключення. Уся проектна документація ведеться англійською, тією самою мовою написані матеріали для підвищення власного професійного рівня.
А як щодо перспектив?
- Актуальна статистика (джерело – dou.ua) свідчить, що кількість спеціалістів з автоматизації тестування на ринку все ще значно поступається напряму Manual QA – співвідношення приблизно 55% до 24%. Інші долі ринку припадають на General QA та Performance QA.
- За прогнозами, до 2024 року в IT – галузі планується збільшення витрат на автоматизацію тестування, а, відповідно, розширюватиметься ринок та спеціалісти з QA Automation будуть затребувані. Проте, це не означає, що мануальне тестування буде повністю заміщене.
- За 3-4 роки інтенсивного розвитку в професії QA Automation цілком реально «вирости» з Junior до Senior позиції. За умови, що ви будете багато вчитися, невпинно і наполегливо вдосконалювати власні знання. В подальшому можна, наприклад, обирати цікавий та перспективний напрям Performance QA, а можна продовжувати розвиток до позиції Quality архітектора. Це спеціаліст, який з нуля розробляє систему тестування того чи іншого продукту, обирає технології.
- Пам’ятайте, що людина, яка добре знає базу, легше засвоюватиме щось нове. Тому, якщо у вас немає практичного досвіду, приділіть максимум уваги вивченню теорії. І не майте жодних сумнівів щодо віку або відсутності вищої технічної освіти. Адже тестування – це не спеціалізація, а спосіб мислення, тому під час оволодіння професією тестувальника не грають ролі ні попередня освіта, ні вік.






