Всё о работе тестировщика программного обеспечения в Молдове. Рассказываем, почему эта профессия так востребована и хорошо оплачивается
Всё о работе тестировщика программного обеспечения в Молдове. Рассказываем, почему эта профессия так востребована и хорошо оплачивается
С развитием новых продуктов в области информационных технологий появляются новые профессии, растет спрос на специалистов в определенных сферах.
В процессе разработки новых систем и приложений, как связанных с информационными технологиями, так и не имеющих к ним никакого отношения, помимо их создателя и разработчика идеи важную роль играет еще один специалист – тестировщик.
Чтобы быть уверенным в успехе какой-либо технологии или механизма необходимо протестировать его при разработке и перед тем, как вывести на рынок. Очевидно, что компьютер или мобильный телефон, с монитора или с экрана, которого ты читаешь этот текст, перед тем, как оказаться в твоих руках прошел не одно тестирование и побывал в руках многих тестировщиков.
«Профессия тестировщика возникла вследствие расширения сферы применения систем программного обеспечения, а осознанию ее важности способствовал целый ряд ошибок при разработке программного обеспечения, платить за которые пришлось очень дорого», признает Олег, тестировщик-консультант «Endava».
Что же собой представляет тестирование программного обеспечения? Давайте разберемся, что кроется за мифами, связанными с этой сферой, один из которых заключается в том, что тестирование – всего лишь проверка разработчика приложения.
На самом деле тестирование означает нечто большее – это процесс испытания информационной системы с целью оценки ее качества, выявления ошибок, проверки ее соответствия всем требованиям, изучения и понимания преимуществ и рисков, которые может нести с собой внедрение данной информационной системы. Иногда специалиста по тестированию называют Quality Assurance Engineer, в переводе – инженер по обеспечению качества.
«Любое программное приложение, независимо от степени сложности, должно пройти процесс тестирования. Критическое мышление вкупе с интуицией и знаниями в области предпринимательства позволяют специалисту по тестированию понять, как должна выглядеть система для конечного пользователя и каким образом можно внедрить ее с наименьшими потерями», говорит Вячеслав, главный тестировщик «Endava».
Тестирование предполагает тщательный анализ, предупреждение определенных сценариев с целью тестирования свойств системы и прогнозирования любых ситуаций, которые могут возникнуть в процессе эксплуатации. В обязанности тестировщика входит выявление так называемых «багов» (ошибок), которые зачастую представляют собой не ошибки как таковые, а новую информацию, новый непредвиденный сценарий, в соответствии с которым нужно переосмыслить проделанную работу и пересмотреть ее таким образом, чтобы в дальнейшем избежать возникновения подобных ошибок.
«Наша профессия началась с «жука» («bug») – неполадок, которые выявлялись в компьютерах и которые нужно было устранять вручную для восстановления работоспособности системы. Со временем стало очевидно, что проще предупредить проблемы, чем выявлять их, таким образом, профессия тестировщика стала играть важную роль в процессе разработки приложений», рассказывает Олег, старший тестировщик «Endava».
Каковы перспективы построения карьеры в области тестирования программного обеспечения
Область тестирования программного обеспечения – целая вселенная, открывающая двери в экосистему, где специалисты могут примерить на себя самые разные роли, каждая из которых предоставляет перспективы карьерного роста.
Рост возможен по вертикали, от начинающего специалиста до руководителя, от координатора команды до менеджера, кроме того, есть возможность освоить одну из многочисленных специализаций.
«В команде тестировщиков существуют самые разные роли, от анализа потребностей до проверки внедрения, от ручного тестирования до построения и поддержания автоматических тестов, от тестирования удобства использования до тестирования совершенства или безопасности внедренной системы. Специалист по тестированию может выбрать для себя любую роль, попробовать свои силы в разных видах деятельности, более или менее сложных», говорит Вячеслав, главный тестировщик «Endava».
Одной из наиболее популярных областей, в которых может заявить о себе молодой специалист, является ручное тестирование.
Это основная роль в работе тестировщика, с которой и начинается процесс проверки.
Работа ручного тестировщика сложна и динамична; она состоит из нескольких этапов.
Наиболее важным является этап анализа, в ходе которого анализируются потребности проекта, потребности клиента и определяется оптимальный способ тестирования продукта.
«Ежедневно мы собираемся, чтобы обсудить достигнутые успехи и планы на будущее. Тестировщик постоянно находится на связи с клиентом, чтобы определить его потребности и правильно понять их; а после тесно сотрудничает с разработчиками проекта, чтобы донести до них то, что сообщил клиент, и чтобы совместными усилиями создать безупречное программное обеспечение», — рассказывает Ольга, старший тестировщик «Endava».
На этапе дизайна и проектирования на основании анализа определяются сценарии функционального тестирования программного обеспечения, которые затем реализуются на этапе проведения тестов.
Программное обеспечение, работа которого по итогам функционального тестирования соответствует ожиданиям, признается функциональной.
В противном случае (если результат далек от ожидаемого) устанавливается системный дефект («баг») и программное обеспечение возвращается разработчику для установления ошибок.
Затем программное обеспечение повторно тестируется на предмет наличия ранее вывяленных дефектов и проверки взаимосвязанных функциональных возможностей.
«Помимо этих процессов тестировщик участвует во всех этапах разработки и внедрения приложения, он тесно взаимодействует с остальными членами своей команды и находится в постоянном контакте как с разработчиками, с которыми работает бок о бок, так и с бизнес-аналитиками, руководителями проектов и непосредственно с клиентами, облегчая таким образом процесс работы», — говорит Кристина, тестировщик-консультант «Endava», развенчивая миф о том, что работа тестировщика скучна и однообразна.
Умение работать в команде – главная составляющая успешного тестирования, залог создания качественной информационной системы, в полной мере соответствующей потребностям клиента.
Как освоить эту профессию
Какие знания и навыки необходимы, чтобы сделать первые шаги в этой профессии? Попробовать свои силы в ней могут даже те, у кого нет опыта работы в сфере информационных технологий, если они обладают аналитическим мышлением, умеют доводить начатое до конца и всегда стремятся сделать это как можно лучше, способны планировать, прогнозировать и заблаговременно составлять сценарии своих последующих действий.
Теорию можно изучить при помощи онлайн-курсов, например «ISTQB Foundation level», а со временем придет и необходимый опыт, тем более что в команде всегда найдутся наставники, готовые подсказать и прийти на помощь.
Ты инженер, фармацевт, экономист или специалист в любой другой отрасли, но тебя манит мир информационных технологий?
Сегодня перед тобой открывается возможность последовать примеру множества специалистов, решивших попробовать свои силы в абсолютно новой для них сфере деятельности и успешно освоивших профессию тестировщика.
В наших следующих материалах мы познакомим тебя с некоторыми из этих людей и расскажем о том, что помогло им добиться успеха.
Ce este software testing-ul și de ce rolul de tester devine o profesie râvnită de mulți IT-ști? Partea I
Cum am putea fi siguri de succesul unei tehnologii sau mașinării, dacă nu o testăm în timpul realizării și înainte de a o lansa pe piață? Cu siguranță calculatorul sau telefonul mobil, de pe ecranul căruia citești acum, a fost testat de nenumărate ori de sute de testeri înainte să ajungă în mâinile tale.
Odată cu dezvoltarea noilor produse IT, apar noi funcții și cerere pentru anumiți specialiști.
În procesul de creare a noi sisteme și aplicații, indiferent că sunt legate de IT sau nu, pe lângă creatorul și dezvoltatorul ideii, mai există un rol foarte important în proces și anume — tester-ul.
„Profesia testerului a apărut odată cu lărgirea domeniului de aplicabilitate a sistemelor soft, importanța acesteia fiind accentuată de o serie de erori software extrem de costisitoare.” ne spune Oleg, Test Consultant la Endava.
Ce este de fapt testarea software? Haideți să vedem ce se ascunde în spatele miturilor asociate cu acest domeniu, unul din care este că testarea e doar verificarea dezvoltatorului de aplicații.
Mult mai mult decât atât, testarea este procesul de exersare a sistemului informatic pentru a aprecia calitatea acestuia, a detecta erori, a verifica dacă acesta satisface toate cerințele, pentru a explora și a înțelege statutul beneficiilor și riscurilor asociate cu lansarea acestuia. Specialistul în testare se mai numește și Quality Assurance Engineer, ceea ce înseamnă Inginer de Asigurare a Calității.
“Orice aplicatie soft indiferent de complexitatea sa implica procesul de testare.
Gindirea critica cuplata cu intuitia si cunostinte in business permite specialistului in testare sa formuleze cum trebuie sa arate sistemul pentru utilizatorul final si implementarea fara defecte a acestei formule.” ne comunica Veaceslav, Head of Testing la Endava.
Testarea presupune și multă analiză, anticiparea diferitor scenarii pentru a putea testa calitățile sistemului și a prevedea orice situație posibilă. Testerul găsește așa numitele bug-uri (erori), care, de multe ori, nu sunt erori, ci o informație nouă, un nou scenariu neprevăzut, în baza căruia trebuie regândit lucrul făcut și remodelat astfel, ca să nu mai apară aceste greșeli.
“Profesia își are începuturile de la un gândac (bug) fizic identificat în circuitele unui calculator care a necesitat intervenție manuală pentru a fi înlăturat astfel ca să fie repus în funcție sistemului respectiv. Cu timpul, s-a determinat că e mai simplu să previi problemele decât să le fixezi, astfel meseria de tester a devenit crucială pentru procesul de dezvoltare a aplicațiilor.” ne dezvăluie Olga, Senior Tester la Endava.
Ce oportunități de carieră îți poate oferi un rol în software testing?
Universul software testing îți deschide ușile spre un întreg ecosistem cu varii roluri, care oferă multiple oportunități de creștere în carieră.
Pe lângă faptul că poți avea o creștere pe verticală, de la un specialist începător, la unul senior, cu posibilități de avansare la coordonator de echipă și test manager, poți adopta și una din multiplele specializări.
“In cadrul unei echipe de testare este loc pentru multiple roluri, de la analiza cerințelor la validarea implementării, de la testarea manuala la construirea si menținerea testelor automatizate, de la testarea comodității – la testarea performantei sau securității sistemului implementat. Te poti regasi ca si specialist in diverse roluri, genuri de activitate, la diverse nivele de complexitate. ” ne povesteste Veaceslav, Head of Testing la Endava.
Daca e să vorbim despre una dintre cele mai populare arii spre care ai putea aspira ca și tânăr specialist, ar fi aria de manual Testing.
Acest rol stă la baza lucrului de tester, de unde pornește tot procesul de verificare.
Lucrul tester-ului manual este complex și dinamic, trecând prin câteva etape.
Etapa de analiză este cea mai importantă, in cadrul ei se analizează nevoile proiectului, de ce are nevoie clientul și cum putem testa mai bine produsul.
„Zilnic, se fac ședințe pentru comunicarea progresului și planurilor viitoare.
Testerul comunică mereu cu clientul, pentru a identifica cerințele acestuia și a le înțelege corect; iar după aceasta are o strânsă colaborare cu developerii din proiect pentru a le transmite cele comunicate de către client și pentru a executa împreună un software fără defecte.” ne mai povestește Olga, Senior Tester la Endava.
Etapa de design și proiectare — în baza analizei, se identifică scenariile de testare a funcționalităților, care sunt ulterior executate în etapa de execuție a testelor.
Ca și rezultat, funcționalitatea testată este acceptată în cazul în care sistemul se poartă conform așteptărilor.
În caz contrar, este considerată eșuată (dacă nu e conform așteptărilor), raportată ca și defect (bug) și reîntoarsă către dezvoltatori, pentru a o fixa.
După fixare, se retestează defectele și se verifică funcțiunile interconectate.
„Pe lângă aceste procese tester-ul este prezent la toate etapele de dezvoltare și implementare a aplicației, fiind mereu într-o strânsă legătură cu echipa sa de testare și comunicând necontenit atât cu dezvoltatorii cu care lucrează cot la cot, cât și cu business analiștii, managerii de proiect și nemijlocit cu clienții, intru fluidizarea proceselor de lucru” Cristina, Test Consultant la Endava risipește mitul precum că lucrul testerului ar fi monoton.
Lucrul de echipă este crucial pentru a obține un proces de testare cu succes, dar mai ales un sistem informatic calitativ, care să satisfacă nevoile clientului.
Cum să intri cu dreptul în această profesie?
Te întrebi de ce abilitați și cunoștințe ai nevoie pentru a face primii pași în această profesie? Lipsa experienței în domeniul IT nu este critică, atâta timp cât dai dovadă de gândire analitică, nu renunți până nu aduci lucrurile la perfecțiune, și ai bune capacități de a planifica, prevedea și structura din timp anumite scenarii.
Partea teoretică o poți însuși trecând o certificare online, ca de exemplu ISTQB Foundation level și experienta vine cu timpul, mai ales când ai in echipa mentori care sa te ghideze.
Ești inginer, farmacist, ai făcut economie sau alt domeniu, dar ești tentat de lumea IT-ului?
Poți urma exemplul multor specialiști care au realizat această tranziție din altă industrie și profesează cu brio profesia de tester.
În materialele următoare vom dezvălui o parte din aceste istorii, și care au fost factorii de succes.