Хто такий AQA-тестувальник та як ним стати?

date 07.02.2023 category Технічні професії в ІТ
Хто такий AQA-тестувальник та як ним стати?

Популярність професії тестувальника не збавляє обертів. Усе тому, що QA – це швидкий старт в ІТ, що не потребує знань у мовах програмування та широкого технічного бекграунду. Старт легкий, розвиватися ж далі у професії – перевага впевнених та амбітних спеціалістів.

 

Як вирости в тестуванні? Піднятися на сходинку вище та перейти з виконання мануальних тестів на AQA (Automation Quality Assurance), тобто автоматизоване тестування. AQA передбачає виявлення помилок у програмному коді продукту без виконання рутинних ручних дій.

 

AQA-спеціалістом стають ті, хто  вже має досвід у мануальному. Саме тому автоматизований тестувальник потребує більше знань та навичок. Яких саме  – знає лектор курсу «QA  Automation (Java)», Team Lead в Automation Software Testing Department у CHI Software Роман Стрельцов. Чим автоматизоване тестування відрізняється від мануального? До чого тут Java? Які етапи роботи в автоматизованому тестуванні? На ці та інші питання відповідаємо в статті.

 

QA Automation Testing

Яка різниця між мануальним та автоматизованим тестуванням?

 

Якщо спиратися на головну мету обох видів тестування, різниці немає. Автоматизатор так само складає тест-кейси та виконує вимоги замовника, щоб довести продукт до ідеального робочого стану. Але якщо поглибитися в деталі, то автоматизоване тестування має багато особливостей і нюансів. Наприклад, у мануального тестувальника весь процес роботи займає більше часу. Автоматизатор же складає автотести, які пришвидшують роботу та водночас дозволяють зробити тестування більш глибоким, із додатковими можливостями й інструментами. По суті, автоматизатор прибирає ручну рутину та пише програму, яка імітує користувача (або мануального тестувальника) для перевірки роботи різних аспектів застосунку чи сайту.

 

Автоматизатор за рівнем ближче до розробника. Чому? Тому що він розуміється в певній мові програмування, бачить код, може його проаналізувати, розробляє окрему інфраструктуру, що допомагає поглиблено тестувати продукт. А це додає дещо унікальності та кастомізації в роботі над замовленням. В усьому ж іншому автоматизований такий же мануальний тестувальник, який описує тест-стратегію та дотримується її.

 

 

Що значить, тестувальнику потрібно знатися на мовах програмування? Це вміти писати код?

 

Ні, це значить розумітися на коді, написаному різними мовами програмування – Java, Python, JavaScript тощо. Головне, мати базові знання про них для проведення автотестування.

 

 

Чому курс називається QA  Automation (Java)?

 

Java – складна своїми підходами та принципами роботи мова програмування. Але щодо об’ємності та повноцінності Java є найкращим варіантом для вивчення автотестування. Тим паче, що за кількістю продуктів, реалізованими саме цією мовою, Java переважає серед інших.

 

Зазвичай, на Java пишуть великі проєкти. Маленький онлайн-магазинчик буде для Java як велика гармата для мух. Тобто непорівнянно навіть. За допомогою цієї мови можна автоматизувати тестування абсолютно будь-якого аспекту програмного забезпечення – мобільного чи десктопного застосунку, мікросервісу тощо. Простіше кажучи, можливостей у Java – сила-силенна.

 

Але ще раз – ті, хто тільки починає свій шлях в автоматизованому тестуванні, не зобовʼязані володіти цією мовою програмування. На початку курсу QA Automation (Java) ми понад місяць присвячуємо вивченню бази Java – який у неї синтаксис, як на ній писати, як створити свою програму. І тільки після цього переходимо до вивчення інструментів автоматизованого тестування.

 

 

З якими технічними знаннями можна приходити на курс?

 

Серед основних технічних знань, автоматизатор-початківець повинен:

 

  • знати теорію тестування, а значить бути джуном-мануальником, хоча б із мінімальним досвідом роботи;
  • розуміти, що таке розробка ПЗ та орієнтуватися в мовах програмування. Якщо знаєте (можливо, вивчали в університеті) одну з них, наприклад, Java, Python, C, C# – це буде для вас величезним плюсом;
  • працювати з клієнтсько-серверною архітектурою додатка, тобто бекендом та фронтендом;
  • знати про протокол HTTP, методи, коди стану, структуру запит-відповідь;
  • користуватися Chrome DevTools;
  • вміти готувати тестову документацію;
  • розуміти тестування АРІ.

 

 

Чи можна оминути мануальне тестування й одразу вивчитися на автоматизатора?

 

Ні, тут без варіантів. Стартуємо зі знань із мануального тестування.

 

 

Опиши коротко поетапність роботи тестувальника-автоматизатора над проєктом?

 

Розпочинаємо з документації: що за проєкт, які до нього вимоги, який стек технологій для його тестування знадобиться тощо. Після етапу «що» починається етап «як». Тобто потрібно домовитися з командою про рівні тестування, тест-покриття, інструменти. Вже після цього складаємо тест-кейси.

 

Якщо коротко, то ми визначилися, що саме тестуємо (усе про проєкт) та як тестуємо (пишемо тест-кейси). Далі – репортинг. Готуємо для розробників інформацію про те, де знайшли баг. Тут найважливіше – бути на одній хвилі з розробником і бути йому помічником, а не просто ланкою процесу. Готуючи баг-репорт, ми не пишемо розробнику щось на кшталт «ось баг в продукті, роби з ним, що хочеш». Ми маємо доступно описати, де саме виявили помилку, як на неї вийшли та як її відтворили.

 

Останнє – здаємо проєкт замовнику. Ми звітуємо перед ним і демонструємо, як виконали всі вимоги, як протестували продукт (надаємо перелік тестів та їхні результати) і довели його роботу до ідеального стану.

 

 

Напевно, на всіх цих етапах важливу роль відіграють і софт скіли тестувальника? Який саме ти вважаєш найнеобхіднішим?

 

Бути командним гравцем. Коли це не гра в одні ворота, а справжня взаємодопомога. Тестувальник, який не зможе налагодити комунікацію та взаєморозуміння з розробниками й менеджерами – завжди відчуватиме себе дискомфортно та невпевнено. Тому вміння тестувальника гарно комунікувати із членами команди – для мене пріоритет.

 

 

Розкажи про професійний ріст тестувальника в автоматизації?

 

Я б порівняв професію автоматизованого тестувальника з деревом, тому що вона має багато гілок: починаючи від мануального тестувальника до SDET (спеціаліст, який поєднує в собі ролі тестувальника, розробника та DevOps). Серед них є такі позиції як Quality Control, Quality Assurance, Security Testing, Performance Testing. Почни з бази – мануального тестування, далі приходь на курс QA Automation Java та відкривай для себе багатогранний світ тестування в ІТ. Зустрінемося на курсі вже наприкінці лютого. Поквапся на реєстрацію, залишилося всього кілька місць!

Цей матеріал ще ніхто не прокоментував

Може, ти станеш першим?

Залишити коментар