article-spots
article-carousel-spots
programs
Історії

Що таке автоматизоване тестування, або Чому я обираю автоматизацію?

26 лист 2020

Якщо ви ще не визначися із вибором майбутньої ІТ-професії, радимо спочатку ознайомитись зі всіма спеціальностями. Сьогодні ми розповімо про роботу інженера з автоматизованого тестування. Спеціаліти саратовського ЕРАМ розповіли, як і чому обрали автоматизоване тестування, чим займаються на проєктах і що подобається в роботі.  


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

Марія Лукашова, інженер з автоматизованого тестування:  

«Я вивчала програмування у Саратовському державному університеті на факультеті комп’ютерних наук та інформаційних технологій. Викладачі багато розповідали про розробку програм, але мені хотілося дізнатися й про інші ІТ-напрямки. Тому в якості теми своїх курсових робіт я обрала тестування.  

До четвертого курсу я не могла визначитися з вибором майбутньої спеціалізації. Мені подобалося писати код, розробляти фічі, бачити результат, а також подобалося тестувати, шукати баги, помічати, що можна покращити або виправити у програмі. Автоматизоване тестування як раз поєднує ці два напрямки!  

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

За два з половиною роки в ЕРАМ я працювала на трьох проєктах і дізналася багато нового. Наприклад, як добувають нафту та газ, розраховують кредити. Я жодного разу не пожалкувала про вибір професії та компанії. Щодня я почуваюся і Шерлоком Холмсом, який розслідує злочин, і Моцартом, який створює новий шедевр». 

Валерій Бамбуров, інженер з автоматизованого тестування:  

«У мене технічний склад розуму, в школі любив математику та інформатику, тому легко визначився з вибором вишу. У 2015 році я вступив до Саратовського державного технічного університету на напрямок «Програмна інженерія». Тоді я багато чого не знав про ІТ і вважав, що в цій сфері працюють лише програмісти і системні адміністратори. З перших місяців навчання мені сподобалося програмувати. Але вже за півтора роки цікавість згасла. Все здавалося одноманітним. Ми виконували одні й ті ж завдання, застосовуючи різні технології або мови програмування.  

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

У листопаді 2017 року я вступив на зовнішній тренінг з тестування в тренінг-центрі ЕРАМ. Тоді я дізнався про автоматизоване тестування і далі продовжив навчання у внутрішній лабораторії за цією спеціальністю. Пригадую, як на співбесіді мене запитали: “Чому ви хочете стати тестувальником? Адже ви маєте гарні навички у розробці”. Я відповів, що вмію програмувати, але не хочу. Втім із задоволенням застосовую навички програмування в автоматизованому тестуванні». 

Наскільки важливо мати технічну освіту, що стати інженером з автоматизованого тестування?  

Марія Лукашова: 

«Будь-який спеціаліст за бажання може прийти в ІТ. Існує багато безкоштовних ресурсів, наш тренінг-центр відкритий для всіх бажаючих. Часто буває, що знання з інших галузей допомагають на проєктах. Наприклад, мій колега з медичною освітою працював на проєкті, пов’язаному з генетичними дослідженнями. Його знання медичної термінології стали в нагоді, він навіть пояснював аналітикам деякі медичні терміни». 

Валерій Бамбуров: 

«Якщо у технічному виші ви навчалися лише в рамках програми, вам не вистачить цих знань, щоб влаштуватися на роботу в ІТ-компанію. Тому не можу сказати, що технічна освіта щось вирішує. Головне — ваше бажання і саморозвиток. Університет може дати гарну теоретичну базу». 

Інженери з автоматизованого тестування пишуть код? 

Марія Лукашова:

«Так, кожного дня. Ми пишемо код фреймворків, заглушок і, звичайно ж, тестів. Без написання коду у нашій справі не обійтися». 

Валерій Бамбуров:

«Безумовно так. До речі, коли почали з’являтися інструменти для автоматизованого тестування з функцією record and play, багато хто думав, що теперь можна автоматизувати і без програмування. Але практика показала, що такі автотести не надійні через свою нестабільність. Гарні автотести можна написати тільки за допомогою коду. Будь-якому інженеру з автоматизованого тестування потрібна навичка програмування». 

Чи справді інженер з автоматизованого тестування — Full Stack фахівець?  

Марія Лукашова:

«Певною мірою так. Ми — тестувальники, які тестують ПЗ. При цьому не завжди автоматизовано, іноді й вручну. Також ми розробляємо програми, які в свою чергу тестують інші програми. В цей момент ми перетворюємося на розробників. Якщо потрібно тестувати веб-додаток без навичок розробки сайтів не обійтись. А щоб налаштувати і підтримувати CI/CD процес, потрібно опанувати навички DevOps-інженера і ще багато чого». 

Валерій Бамбуров: 

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

Які є шляхи подальшого розвитку?  

Марія Лукашова: 

«Їх безліч. Можна змінити проєкт або платформу додатку. Наприклад, з веб на мобільний. Або перейти на іншу мову програмування. Можна розробити власний фреймворк для автоматизованого тестування або повноцінний продукт «у коробці» для тих же цілей. Можна перейти в навантажувальне тестування або розвиватися до архітектора програмних продуктів». 

Валерій Бамбуров: 

«Можна вивчати різні інструменти для автоматизації (їх багато) або глибоко опанувати лише декотрі. Ще можна стати Software Development Engineer in Test. Це інженер, який поєднує роботу автоматизатора, DevOps-розробника і програміста». 

Як бачите, в IT працюють не тільки розробники, але й багато інших фахівців. Бажаємо вам знайти свій IТнапрямок, як це вдалося героям нашого матеріалу. Обирайте те, що до душі саме вам P.S.: обирайте автоматизоване тестування. 

Всі безкоштовні тренінги з автоматизованого тестування від тренінг-центру ЕРАМ можна подивитися тут.