Блог

Всички статии

QA инженер: Manual срещу Automation – какво да избера?

QA Manual vs QA Automation

Експерти от ИТ индустрията прогнозират, че през 2023 г. и през следващите 5-10 години търсенето на QA специалисти ще нарасне с 25%. Това е търсена професия, в която QA-automation допълват QA-manual, за да произведат висококачествен цифров продукт.

Кои са QA инженерите? Това са специалисти, чиято задача е да тестват функционалността на софтуера на всички етапи на разработка. Много е важно тестерът да разбере и види системата за разработка като цяло, където промените в една част от системата неизбежно ще повлияят на работата на други части. Без тестер продуктът в по-голямата част от случаите ще бъде пълен с грешки, които самите разработчици не могат да видят.

Каква е работата на тестер? При проверка на всички възможни сценарии на софтуера, като се започне от етапа на спецификация. Тоест QA инженерът е добре запознат с това как са подредени всички компоненти, което му позволява ефективно да ги проверява. Той създава различни ситуации, които не са били предвидени по време на разработката, разкрива онези грешки и проблеми във функционалността на софтуера, които могат да се появят по време на работа.

Днес на ИТ пазара може да намерите свободни позиции за QA-мануалисти и QA-автоматици. Ръчното тестване и автоматизираното тестване са две области на работа върху софтуера, които се допълват. Първоначално тестването се извършва ръчно, а след това Automated QA пише тестове, които автоматизират предсказуемите потребителски действия. С развитието на проекта мануалистът вече няма да има нужда да проверява повторно тези действия, те ще бъдат проверени за него чрез автоматични тестове.

Как изглежда работата на тестера в ръчен и автоматичен формат?

Какво прави Manual QA инженер?

Ръчен тестер или  Manual QA Engineer е специалист, чиято задача е да анализира и намира грешки в софтуера, без да използва програми. Той е този, който моделира и симулира възможните действия на потребителя, включително грешни, които ще взаимодействат с крайния продукт. Идентифицират се грешки или „бъгове“ в дизайна, функционалността и последователната логика на работа със софтуера. Чрез тестване на продукт на различни етапи на разработка, ръчният тестер проверява неговата надеждност и използваемост. Той въвежда резултатите от работата си в тестов доклад (бъг репорт) за разработчици, които ще коригират грешки.

Отговорности за QA:

  • Проучване на документация и изискванията към разработения софтуер
  • Планиране на теста – видове, обхват, методи
  • Разработване на тестови случаи (алгоритми), чек листове
  • Провеждане на тестване, създаване на отчет
  • Повторна проверка след поправки
  • Създаване на  отчет за всички тестове

Какво трябва да знаете, за да работите като Manual QA:

  • Да познавате основите на тестването: класификация, методи, сценарии и инструменти
  • Основни познания по програмиране, HTML и CSS
  • Разбиране как работят базите данни и системите за контрол на версиите

Как може да се развива Manual QA?

За да избегнете стагнация в професионалното развитие, трябва да изберете в коя посока да продължите. Добрата новина е, че тестерът е толкова близо до бизнеса, колкото и до разработката. Отделен клон за развитие от Senior Manual QA е управлението и QA анализът. Lead също има управленски задачи,можете да изградите кариерата си  като Project Manager, Product Manager, Resource Manager или всеки друг мениджър. Търсима позиция  през 2023 г. е опитен специалист по QA Manual с аналитично мислене.

Какво е QA анализатор?

QA анализаторът е най-осведоменият тестер, който майсторски балансира тежестта и приоритета, така че разработчиците да са фокусирани върху наистина важните неща във всеки момент на отстраняване на грешки в системата. На този етап от QA-аналитика се изисква преди всичко способността да вижда цялата картина, а не подробностите.

Какво прави QA анализатор:

  • QA анализаторите, за разлика от тестерите, участват в обсъждането на изискванията и оценяват въздействието на новите изисквания върху вече готова система
  • Той е много близо до системата, работи с нея всеки ден, така че му е по-лесно да пише документация
  • QA анализаторите могат да създават макети за нови изисквания или да предписват случаи на употреба, за които ще бъдат извършени допълнителни тестове и приемане на готовите резултати.

Кой е подходящ за  QA анализатор? QA анализът е за вас, ако:

  • обичате да общувате с хора, умеете да разрешавате конфликтни ситуации и умеете да преговаряте на високо ниво
  • не се напрягате да пишете документация
  • работили сте като тестер повече от 2 години, имате богати знания и опит и търсите нови възможности за развитие

Как да започнете разработката от ръчен тестер до QA анализатор? При работа по проекти участвайте в анализа им, комуникацията с клиента и изготвянето на техническа документация.

Какво прави QA Automation Engineer?

Automation QA Engineer създава тестове с помощта на скриптове, което ви позволява да автоматизирате процеса на тестване.

Отговорности на Automation QA:

  • Планиране на тестови сценарии
  • Създаване на автоматизирани тестове
  • Тестване
  • Анализ на резултатите от готовите тестове
  • Подобряване на скриптове и код на автотестове
  • Създаване на отчет за открити грешки
  • Повторна проверка на коригирани грешки

Какво трябва да знае QA Automation:

  • Да познава теорията и практиката на тестване с писане на тестови случаи
  • Използване на инструментариума на Java за четлив и поддържаем код
  • Познаване на фреймворкове за автоматизация на тестове
  • Познания за програмен интерфейс (API) и  на потребителски интерфейс (UI).

За позицията Trainee QA Engineer  може да се наемат хора и с минимален трудов стаж и да вършат лесни задачи. Например, създаване на тестове по готова извадка или коригиране на готови тестове. А какво трябва да знае Middle QA Automation например? Това е средноквалифициран специалист с около 3 години опит, създава тестови скриптове и поддържа техническа документация, чете логове, притежава системи за контрол на версиите, самостоятелно тества проекта, включително бази данни, и обучава стажанти. Колкото по-висока е квалификацията, толкова по-трудни са и техническите задачи.

Трябва ли тестерът да знае езици за програмиране?

Ръчният тестер от нулата може да не знае езици за програмиране, но е желателно поне да разбира основите на приложното програмиране. В същото време автоматизираният тестер прекарва около 75-80% от времето в писане на код. За начинаещ специалист е достатъчно да знаете английски, за да напишете скрипт, като използва готови методи. Но напредналите инженери по автоматизация на софтуерни тестове се нуждаят от задълбочени познания по автоматизация на тестове и програмиране. Тъй като в работата си използват фреймворкове, Java библиотеки, SQL и др. Владеенето на един език е задължително, а ако един специалист владее няколко езика за програмиране, стойността му значително нараства в очите на работодателя.

Какъв QA се търси на ИТ пазара през 2023 г.?

Според последните проучвания търсенето на QA специалисти нараства и автоматичните тестери са водещи в тази ниша по отношение на заплащането. Това е така, защото автоматизираното тестване намалява разходите (финансови и времеви) за тестване и увеличава производителността. Но ръчното тестване все още е привлекателно за кандидатите поради ниския праг за навлизане в ИТ сферата. Освен това, това е страхотен старт, за да станете в крайна сметка тестер за автоматизация и да се придвижите нагоре по кариерната стълба.

Как да започнете кариерата си  като QA инженер

Без опит в тестването можете да си намерите работа в компания като стажант техник. Това е добро начало за тези, които планират да се развиват в тази посока и искат да развият задълбочена техническа подготовка, за да разширят своите твърди умения и да пишат автоматизирани тестове.

Предимствата на интервюто ще бъдат:

  • Теоретична база, усвоена самостоятелно
  • Преминаване на систематични курсове
  • Познаване на инструментите за тестване
  • Опит в работа по реални проекти

Стажантската позиция може да се заеме без висше образование, но с примери на работа – тестови случаи. За да направите това, можете да вземете всякакви сайтове и приложения, да проведете тестове и да ги опишете правилно.

Soft skills също са много важни. Ще бъде плюсс, ако кандидатът притежава следните умения:

  • Комуникабелност
  •  Желание за учене и усвояване на нови технологии
  • Дисциплина и внимание към детайли
  • Аналитично и критично мислене
  • Способността да управлявате времето си и да спазвате срокове
  • УСтресоустойчивост

Заключение 

QA-инженерите и тестерите днес са едни от най-търсените и бързо развиващи се професии в ИТ сферата в света.

Без познания на езици за програмиране можете да започнете кариера като ръчен тестер и заедно с изучаването на основите на тестването да овладеете езиците за програмиране. Тази точка в  автобиографията ви може да повиши очакваната  заплата и шансовете за намиране на работа с 20-25% в сравнение с ръчен тестер със същия опит.

Непрекъснато развитие на hard и soft skills ще ви позволи да подобрите своите компетенции, да се придвижите нагоре по кариерната стълба и да изберете сложни и интересни проекти за самореализация.