QA
December 16, 2020

Яким буде майбутнє тестування? Поговоримо про тенденції!

16.12.20 ⏰7,5 хв

Очевидно, що сфера тестування програмного забезпечення постійно і дуже стрімко трансформується, як і все в ІТ галузі. Проте, що ж стоїть за цими змінами? І теж не менш важливо: що очікує тестувальників найближчим часом? У цій статті зібрані думки 12 провідних експертів в області тестування ПЗ.

Для легшого сприйняття давайте одразу поділимо зміни в області тестування на зовнішні та внутрішні чинники та звісно ж розглянемо деякі з них.

Зовнішні чинники

  • Широке використання технологій в повсякденному житті.
    Згідно зі звітом компанії App Annie, впродовж одного дня людина використовує в середньому дев'ять додатків на смартфонах. Це число однозначно збільшиться, якщо взяти до уваги абсолютно всі технології, які Ви використовуєте!
  • Підвищення очікувань користувачів від програмного забезпечення. Наприклад, TechBeacon з'ясував: 49% користувачів очікують, що додатки відреагують на запит впродовж двох секунд і не довше, а 80% користувачів не використовуватимуть додаток з помилками більше ніж три рази.
  • Потреба в розробці нового і поліпшення існуючого програмного забезпечення.
    Світ не стоїть на місці, технології постійно розвиваються, ...

Згідно з дослідженням IDC, до 2020 року світовий ринок продуктів і послуг Internet of Things досяг 7,1 трильйона доларів. Це спровокувало ще більшу необхідність для кожної компанії в покращенні розробки й тестування ПЗ.

Внутрішні чинники

  • Зростання технологічних рішень для підтримки життєвого циклу проєкту (SDLC). Існує трохи більш як 1500 різних інструментів, які тестувальники можуть використовувати в рамках SDLC, але неправильне їх використання може значно ускладнити роботу.
  • Вдосконалення та поширення Agile і DevOps. Це відчутно впливає на тестування програмного забезпечення. За даними VersionOne, 95% компаній використовують Agile, а за даними RightScale, застосування DevOps дійшло до 74%. Таким чином, тестувальникам необхідно постійно адаптуватися.
  • Автоматизація. Як-не-як автоматизація стає необхідним інструментом, але тестувальникам варто зберігати правильний баланс між автоматизованим і ручним.

Які тенденції в розвитку тестування ПЗ?

Автоматизація — майбутнє тестування


Брендон Сайпс, віцепрезидент DevOps в CPrime, прогнозує:

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

З іншого боку, такі експерти як Раян Якель та Кевін Данн (директор з маркетингу продукції та віцепрезидент у QASymphony) вважають, що необхідно бути обережними в автоматизації. Ось думка Якеля стосовно переходу тестування на цілковиту автоматизацію:

«Ви повинні розуміти, що не кожну річ, яку Ви робите, можна автоматизувати. Ви все ще маєте потребу в ручній взаємодії з людьми, особливо з користувачами. Навколо автоматизації зібрана велика кількість нереалістичних очікувань, тому необхідно витримувати баланс».

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

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

Штучний інтелект і машинне навчання


На думку Суніла Сегала, керуючого партнера TechArcis Solutions, попри те, що штучний інтелект і машинне навчання ще доволі незрілі, вони безумовно мають практичну реалізацію з точки зору тестування.

«У загальному підсумку — ці технології дають нам додатковий рівень автоматизації. Вони стануть обов'язковими, розширять горизонти тестування і стануть самоадаптивними».

Енджі Джонс, старший інженер-програміст з тестування в Twitter, вважає:

«У міру того, як ПЗ стає все складнішим та більш взаємопов'язаним з іншими системами, а також з нашим фізичним світом, традиційні підходи до тестування повинні розвиватися. У світі, де домінують IoT, штучний інтелект і машинне навчання, тестування залишиться незмінним у своїй основі, але інструменти, методи та підходи повинні йти вперед».

Тестувальники повинні бути готові адаптуватися до змін та вивчати нові методи


Джо Колантоніо, засновник TestTalks & GuildConferences, вважає, що для того, щоб досягти успіху в майбутньому, тестувальники повинні уважно стежити за тенденціями, спілкуючись з різними спеціалістами й цікавлячись що роблять інші організації.

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

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

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

Межі зникають


За словами Якеля, тестувальники повинні бути готові до співпраці з розробниками.

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

У цьому ж ключі Деніел підкреслює важливість залучення команд з контролю якості в процес розробки програмного забезпечення на ранніх стадіях.

«Командам необхідне краще планування, а не великі команди з тестування».

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

Боббі Сміт, директор з науково-дослідних і дослідно-конструкторських робіт в QASymphony, стверджує, що ключем до успіху в цьому світі розмитих кордонів буде тісна співпраця з командами розробників і найкраща комунікація з бізнесом.

Висновок


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

І хоча для Facebook та Instagram цілком нормально випускати програмне забезпечення з незначними помилками, але все ж коли справа доходить до таких речей як фінансове та медичне програмне забезпечення, помилок бути не може.

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

Можливості для тестувальників будуть тільки рости. Вони вже розширюються, оскільки тестування стає все більш захоплюючим, складним і затребуваним.