Зображення тест-інженера автоматизатора

    Цілком природне для більшості, продовження розвитку #Кар’єри фахівця ручного тестування — спроба зайняти нішу автоматизованого тестування.

    Автоматизоване тестування — це сфера професійної діяльності у IT, котра виникла на перетині програмування та Quality Assurance(забезпечення якості).

Логічно QA Automation engineer — це фахівець із забезпечення якості продукту, який використовує програмні засоби для створення тестів чи перевірки результатів їх виконання.

    Зрозуміліше: тестувальник-розробник пише маленькі такі собі програмки(скрипти), використовує фреймворки, які тестують, перевіряють роботу програмістів замість нього — нічого не поробиш, лінь перемагає завше, а нетерпіння побачити результат вже і негайно рухають прогрес!  Найчастіше автоматизація застосовується на рутинних ланках роботи.

   БАНАЛЬНО, але по правді сказати… здебільшого ручні тестери в автоматизатори переходять, бо морально бажають почуватися на рівні розробників; Примарно вважаючи, що це є їх зріст. Інша вагома причина — більше грошей. Мало йдуть за покликом душі і серця.

    Добре, і хто ж тоді вважається хорошим автоматизатором? Той хто в силі все автоматизувати ?! Ні! Зовсім ні! М-м-м…Теоретично запрограмувати можна будь-яку кількість перевірок. Але, чи це потрібно? В підтримці процесу автоматизації де її через край, цілком реально потонути…

    Стосовно дилеми: АВТОМАТИЗОВУВАТИ/НЕ АВТОМАТИЗОВУВАТИ? Ми це вже якось тут розглядали у темі: Автоматизоване тестування WEB-додатків – ключові поняття  і знаємо, що автоматизація, а отже і залучення фахівця тест-інженера автоматизатора доцільне лише у випадку, якщо час і ресурси витрачені на реалізацію та підтримку автоматизованих тестів, не будуть перевищувати ручних — Читайте додатково!

Обов’язки та завдання автоматизатора на проекті:

  • продумування, написання нових автотестів;
  • вибір підходящих фреймворків для цього;
  • налаштування тестових оточень;
  • підтримка працездатності старих написаних тестів;
  • аналіз тестового покриття;
  • підготовка тестових даних;
  • написання автотесту, тестового скрипту;
  • інтеграція з системами автоматичного запуску або утримування інтеграції;
  • виконання автоматичних тестів;
  • аналіз результатів прогонів авто-тестів;
  • Баг-Репортинг, загальні звіти про тестування;
  • верифікація і виправлення  програмістських помилок;
  • повторне рев’ю коду;
  • стенд-ап мітинги.

    У маленьких компаніях можливі варіанти, коли ручне і автоматизоване тестування провадить 1 людина.

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

Додам  влучне цитування, яке десь вилізло мені у інтернеті:

Ручний тестер — лікар, а автоматизатор — це фахівець з правами встановлювати або ремонтувати медичне обладнання, з деякими знаннями медицини. Хороший лікар використовує різні допоміжні засоби та прилади у роботі, але не ставить собі за мету повністю автоматизувати постановку діагнозу, щоби заощадити гроші. Так само спроба замінити мануальщиків автоматизаторами абсурдна, як абсурдна заміна лікарів самими лише приладами. Однозначно, процес автоматизації тестування повинен бути керованим. Висококваліфіковані ручний тестер та автоматизатор повинні працювати у команді, навзаєм звітувати, не забувати рахувати час та відчувати свої власні можливості і можливості усіх решта членів колективу.

Як перетворитися на QA-автоматизатора?

  • знати процес розробки ПЗ;
  • для початку необхідно освоїти ручне тестування (в тому числі тестові фреймворки);
  • хоча би півроку пропрацювати малуальщиком для розуміння, навіщо потрібен той чи інший тест і які тести потрібні для покриття того чи іншого елемента функціональності;
  • базові знання ООП  і вміти розробляти алгоритми;
  • бути знайомим з SQL (вміти писати запити до БД);
  • вивчити основи мови програмування необхідної для написання автотестів. Благо це може бути широкий вибір Java або C #, Python, JS, PHP — узагалі, що завгодно;
  • для вебу потрібно знати Selenium Web Driver;
  • бажано мати уявлення JUnit / TestNG / NUnit .

Що стосується особистісних якостей, необхідних тест-інженеру Автоматизатору:

  • бути обдарованим розвинутим логічним і абстрактним мисленням;
  • вміти аналізувати;
  • любити складні завдання;
  • бути посидючим,працьовитим і уважним до деталей;
  • уміти працювати в команді;
  • оскільки технології швидко змінюються, потрібно швидко засвоювати нову інформацію та постійно працювати над собою.

Шляхи Розвитку QA Automation Engineer:

Рости по вертикалі, саме як фахівець-Автоматор: Junior Automation QA -> Middle Automation QA>  Senior Automation QA -> Automation QA Lead;

Зростати по технічній лінії: Test Architect;

Розвиватися в управлінському напрямі: Автоматизація QA Manager -> Automation QA Manager/ Project Manager з перспективами на Program Manager / СТО(технічного директора).

Related posts

Командний рядок

Що таке командна стрічка, кілька прикладів як із нею працювати

Сьогодні я розповідатиму про один із най-най-най необхідних інструментів для будь-якого тестувальника,...

Leave a Comment

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.