QA инженер: Manual срещу 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 ще ви позволи да подобрите своите компетенции, да се придвижите нагоре по кариерната стълба и да изберете сложни и интересни проекти за самореализация.