QA Engineer: Мануальщик vs Автоматизатор – що обрати?
Експерти IT-галузі прогнозують, що у 2023 році та у найближчі 5-10 років попит на QA-фахівців зросте на 25%. Це популярна професія, в якій QA-автоматизатори доповнюють QA-мануальників для випуску якісного цифрового продукту.
Хто такі QA-інженери? Це фахівці, до завдання яких входить тестування функціональності програмного забезпечення на всіх етапах розробки. Для тестувальника дуже важливо розуміти та бачити систему розробки в цілому, де зміни в одній частині системи неминуче вплинуть на роботу інших частин. Без тестувальника продукт у переважній кількості випадків буде сповнений багів, які не змогли побачити самі розробники.
У чому полягає робота тестувальника? У перевірці всіх можливих сценаріїв роботи програмного забезпечення, починаючи зі стадії специфікацій. Тобто, QA-інженер добре розуміється на тому, як влаштовані всі компоненти, що дозволяє йому їх ефективно перевіряти. Він створює різні ситуації, не передбачені при розробці, виявляє ті баги та проблеми у функціоналі ПЗ, які могли б з’явитися у процесі експлуатації.
На сьогодні на ринку IT можна знайти вакансії для QA-мануальників та QA-автоматизаторів. Ручне тестування та автоматизоване – це два напрямки робіт над ПЗ, які взаємодоповнюються. Спочатку тестування проводиться вручну, а потім Automated QA пише тести, що автоматизують прогнозовані дії користувача. При розвитку проєкта мануальщику вже не потрібно буде знову перевіряти дані дії, їх за нього перевірять автоматичні тести.
Як виглядає робота тестувальника у ручному та автоматичному форматі?
Чим займається Manual QA Engineer
Ручний тестувальник або QA-мануальник (Manual QA Engineer) – це фахівець, завданням якого є аналіз і пошук помилок у ПЗ без застосування програм. Саме він моделює та імітує можливі дії користувача, включаючи помилкові, що взаємодіятиме з кінцевим продуктом. Помилки або «баги» виявляються в дизайні, функціональності та послідовній логіці роботи з ПЗ. Тестуючи продукт на різних етапах розвитку, ручний тестувальник перевіряє його надійність та юзабіліті. Результати роботи він заносить до звіту про тестування (баг-репорт) для розробників, які виправлятимуть помилки.
Обов’язки Manual QA:
- Вивчення документації та вимог до ПЗ
- Планування тестування – типи, обсяг робіт, методи
- Розробка тест-кейсів (алгоритмів), чек-листів
- Проведення тестування, створення звіту
- Повторна перевірка після виправлення
- Створення звіту з усіх тестів
Що потрібно знати для роботи ручним тестувальником:
- Володіння основами тестування: класифікація, методи, сценарії та інструменти
- Знання основ програмування, HTML та CSS
- Розуміння принципу роботи баз даних та систем контролю версій
Куди зростати Мануальному тестувальнику?
Щоб уникнути стагнації у професійному розвитку, потрібно вибрати, в який бік рухатись далі. Хороша новина в тому, що тестувальник знаходиться однаково близько і до бізнесу, і розробки. Окрема гілка розвитку з Senior Manual QA – це менеджмент та QA-аналіз. Менеджерські завдання є і в Lead, але можна будувати кар’єру як Project Manager, Product Manager, Resource Manager або будь-який інший менеджер. Затребуваний у 2023 році досвідчений QA Мануал спеціаліст аналітичного складу розуму.
Хто такий QA-аналітик?
QA-аналітик – це найбільш обізнаний тестувальник, що віртуозно виставляє баланс severity і priority, так, щоб розробники були зосереджені на по-справжньому важливих речах у кожний момент налагодження системи. На цьому етапі від QA-аналітика потрібно насамперед уміння бачити картину в цілому, а не зокрема.
Чим займається QA-аналітик:
- QA-аналітики, на відміну від тестувальників, беруть участь в обговоренні вимог та проводять оцінку впливу нових вимог на вже готову систему
- Він дуже близький до системи, щодня працює з нею, тому документацію йому написати простіше
- QA-аналітики можуть створювати мокапи за новими вимогами або прописувати сценарії використання, за якими далі проводитиметься тестування та приймання готових результатів.
Кому підійде бути QA-аналітиком? QA-аналітика – це ваше, якщо:
- вам подобається спілкуватися з людьми, ви вмієте вирішувати конфліктні ситуації, і здатні на високому рівні вести переговори
- вам “не в напруження” писати документацію
- ви пропрацювали тестувальником більше 2-х років, маєте багаж знань та досвіду, та шукайте нові гілки розвитку
Як розпочати розвиток з Мануального тестувальника у QA-аналітики? Працюючи над проектами, беріть участь у його аналізі, спілкуванні з клієнтом, складанні технічної документації.
Що робить QA Automation Engineer
Автотестувальник або Automation QA Engineer створює тести з використанням скриптів, що дозволяє автоматизувати процес тестування.
Обов’язки QA-автоматизатора:
- Планування сценаріїв тестування
- Створення автоматичних тестів
- Тестування
- Аналіз готових результатів тестів
- Доопрацювання сценаріїв та коду автотестів
- Створення звіту за знайденими багами
- Перевірка виправлених помилок
Що повинен знати QA Automation:
- Володіння теорією та практикою тестування з написанням тест-кейсів
- Використання інструментарію Java для читаного та підтримуваного коду
- Знання фреймворків автоматизації тестування
- Володіння інструментами автоматизації інтерфейсів програмування (API) та інтерфейсів користувача (UI)
На посаду Trainee QA Engineer можуть взяти з мінімальним досвідом роботи та давати нескладні завдання. Наприклад, створювати тести за готовим зразком або виправляти готові. А що має знати Middle QA Automation, наприклад? Це спеціаліст середньої кваліфікації, має досвід приблизно 3 роки, створює сценарії тестування та веде технічну документацію, читає логи, володіє системами контролю версій, самостійно проводить тестування проєкт, включаючи бази даних, та навчає стажистів. Чим вище кваліфікації, тим складніші технічні завдання.
Чи потрібно тестувальнику знати мови програмування?
Ручний тестувальник з нуля може не знати мови програмування, але бажано, щоб він хоч би знався на основах прикладного програмування. Водночас, тестувальник-автоматизатор витрачає близько 75-80% часу на написання коду. Для фахівця-початківця достатньо знати англійську, щоб написати сценарій з використанням готових методів. Для просунутих Software Test Automation Engineer потрібні глибокі знання автоматизації тестування і програмування. Оскільки у роботі вони використовують фреймворки, Java-бібліотеки, SQL тощо. Знання однієї мови є обов’язковим, а якщо фахівець знає кілька мов програмування — його цінність значно зростає в очах роботодавця.
Які QA у 2023 році затребуваніші на IT ринку?
Згідно з останніми дослідженнями, попит на QA-фахівців зростає і в цій ніші з праці лідирують автоматичні тестувальники. Це пояснюється тим, що автоматизоване тестування дозволяє скоротити витрати (фінансові та тимчасові) на тестування та підвищити рівень продуктивності. Але ручне тестування, як і раніше, залишається привабливим для претендентів внаслідок низького порога входження до сфери IT. На додаток, це відмінний старт для того, щоб згодом стати тестувальником-автоматизатором і просунутися кар’єрними сходами.
З чого розпочати кар’єру QA Engineer
Без досвіду тестування можна влаштуватися на посаду стажиста-мануальщика. Це хороший старт для тих, хто планує розвиватися в цьому напрямку і хоче напрацювати поглиблений технічний бекграунд для розширення hard скілів і написання автоматичних тестів.
Перевагою на співбесіді буде:
- Теоретична база, освоєна самостійно
- Проходження систематизованих курсів
- Знання інструментів тестувальників
- Досвід роботи над реальними проєктами
На посаду стажистів можуть взяти й без диплома ВНЗ, але з прикладами робіт – тест-кейсами. Для цього можна брати будь-які сайти та програми, проводити тестування та грамотно їх описувати.
Не менш важливими є і soft skills. Буде плюсом, якщо кандидат має такі навички:
- Комунікабельність
- Бажання вчиться та освоювати нові технології
- Дисциплінованість та увага до деталей
- Аналітичне та критичне мислення
- Вміння планувати свій час та укладатися у строки
- Стресостійкість
Резюме
QA-інженери та тестувальники нині – одна з найпопулярніших професій в IT сфері у світі.
Без знання мов програмування можна розпочинати кар’єру як мануальний тестувальник, і поряд з вивченням основ тестування освоювати мови програмування. Цей пункт у резюме може на 20-25% підняти очікувану зарплату та шанси отримати роботу порівняно з мануальним тестувальником із таким самим досвідом.
Постійний розвиток hard і soft skills дозволить підвищувати компетенції, рухатися кар’єрними сходами та вибирати складні та цікаві проєкти для самореалізації.