Що потрібно знати про тестування?

Що потрібно знати про тестування?

SoftServe Education

Твій короткий екскурс у сферу. Вікторія Ряжська, менторка SoftServe Academy, поділилася всім, що треба знати про тестування перед тим, як отримувати професію.

Розповідаємо про те, з чого все почалося, чим насправді займаються тестувальники, які є види тестування та що очікувати від штучного інтелекту.

Хто такі тестувальники?  

Почнімо з самого початку. Розробники, тестувальники, бізнес-аналітики та DevOps-інженери разом працюють над одним проєктом заради спільної цілі — якісно розробленого продукту. І хоча за якість продукту відповідає вся команда, саме тестувальники все перевіряють та приймають рішення про передачу продукту замовнику. 

При цьому такі фахівці мають постійно вчити щось нове. Адже сфера ІТ дуже динамічна, тому й вимоги до кваліфікації спеціалістів постійно зростають. 

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


Історія виникнення тестування та помилка на $125 млн 

Окрема галузь виникла лише у 1980-х роках, проте першим випадком тестування програмного забезпечення можна вважати створення ENIAC у 1940-х. Перші програмісти, серед яких були виключно жінки, використовували складні процедури, щоб перевірити правильність роботи цієї величезної машини розміром 15 на 9 метрів. 

Тестування ENIAC

Основна мета тестування — пошук помилок. Вперше у контексті програмування поняття «помилка» використала одна з засновниць комп'ютерних наук, Ґрейс Гоппер, у 1940-х роках. Вона знайшла мертвого метелика — «bug» — у релейних контактах одного з комп'ютерів Harvard Mark II, що призвело до збою в роботі машини. 

Помилки, пропущені під час тестування, можуть бути фатальними. Наприклад, найдорожча така помилка сталася у 1999 році. Її вартість оцінюється в $125 мільйонів. Тоді космічний зонд NASA «Mars Climate Orbiter» втратили, бо він вийшов з курсу. Це сталося через те, що частина ПЗ використовувала метричну систему мір, а інша — американську.  

Є ще така річ, як «парадокс тестування». Чим активніше ти шукаєш помилки, тим краще ПЗ. Та якщо помилок немає — зростає ймовірність, що вони просто добре сховані. Цей парадокс підкреслює складність та важливість роботи тестувальників. 


Чим займаються тестери на різних етапах розробки? 

Може здатися, що тестувальники перевіряють лише готовий продукт. Проте вони залучаються на проєкт на самому старті, коли ще нічого не готово до перевірки. 

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

Наприклад, перед тим як розробляти інтернет-магазин, треба подумати над тим: 

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

Коли тестувальники проаналізували та узгодили всі вимоги, можна переходити до підготовки тестової документації. Спеціалісти розробляють план того, що і як вони перевірятимуть та прописують різні сценарії перевірки. Це називають створенням тест-дизайну та розробкою тест-кейсів.  

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


Види тестування  

Умовно можемо поділити тестування на два блоки: функціональне та нефункціональне. 

  • Функціональне відповідає на питання «що?». Для прикладу, маємо перевірити, чи може користувач зареєструватись на сайті та замовити товари. 
  • Нефункціональне відповідає на питання «як?». Тут перевіряємо, як працює наша програма. Наприклад, її зовнішній інтерфейс, швидкість виконання певних функцій, доступність — те, наскільки зручно користуватися програмою людям з інвалідністю. Також це включає тестування на проникнення, що перевіряє безпеку системи шляхом імітації атак зловмисників.


Штучний інтелект у тестуванні: друг чи ворог?  

Штучний інтелект дозволяє оптимізувати та автоматизувати процеси тестування, адже він може швидко виявляти помилки та взяти на себе рутинні завдання.  

Також ШІ створив і нові завдання тестувальникам, адже алгоритми машинного навчання та системи штучного інтелекту також потрібно перевіряти. Сюди входить тестування точності, стійкості до помилок та поведінки в непередбачуваних ситуаціях, а ще аналіз згенерованих штучним інтелектом результатів. 

Тож попри те, що ШІ може допомагати з тестуванням, він також розширює обсяг задач спеціалістів.

Він не може повністю замінити людський досвід та інтуїцію. Критичне мислення, креативність та аналіз результатів тестування дозволяють виявляти складні проблеми, які штучний інтелект може не помітити. Тому ШІ — гарний помічник тестувальника, а не його заміна.  


✨✨✨✨✨


Наші студенти часто ставлять питання щодо стосунків тестування та штучного інтелекту. На що ми відповідаємо цифрами: за 2024 рік кожний третій випускник нашого Практичного курсу з тестування долучився до команди SoftServe. Тож ШІ — крутий інструмент, а спеціалісти, які вміють з ним працювати — ще крутіші.

Розповімо на прикладі випускниці Надії, що після курсу отримала посаду Trainee QC Engineer у компанії: 

— Про SoftServe Academy я знала задовго до того, як вирішила йти в тестування. Та коли все ж вирішила — пішла на курс, маючи за плечима години прослуханих відео на YouTube по теорії тестування, практично нульовий досвід та страх, що ШІ може замінити всіх в найближчому майбутньому.   
Та на курсі все змінилося. Моя менторка Вікторія завжди доступно все пояснювала, а всі теоретичні теми ми засвоювали на практиці. Ми працювали над соціальним проєктом GreenCity, і це суперовий підхід. Відчуваєш ефект з цього, коли починаєш працювати на реальній роботі. І розумієш, що ШІ ще далеко до того, щоб забрати роботу тестувальників. 
Після закінчення курсу мені написала рекрутер Ірина та запропонувала спробувати себе на позиції Trainee QC Engineer. Так я й потрапила до команди SoftServe🎉

Якщо вважаєш, що тестування — твоя сфера, наступна група курсу з практичного тестування стартує 6 травня. Реєструйся 😎

А якщо маєш англійську на рівні Upper-Intermediate, то маєш можливість отримати грант на навчання та пройти цей курс безплатно.

Також ти можеш обрати інший курс з тестування, який підходить тобі найбільше:

  • Повний, щоб пройти шлях з нуля і до першого оферу
  • Базовий, щоб познайомитись з напрямом та опанувати основні навички



 



 


 

 


Report Page