10:49
23 грудня
2024

Анатолій Тимощук: "Вкладення в автотестування завжди окупаються"

Анатолій Тимощук: Вкладення в автотестування завжди окупаються - today.ua"
title="Анатолій Тимощук: Вкладення в автотестування завжди окупаються
160
Олексій Скубій
Редактор стрічки новин today.ua

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

У 2023 році обсяг світового ринку автоматизованого тестування оцінювався в 15,4 мільярда доларів. За прогнозами, у 2025 році він складе 17,7 мільярда доларів, а до 2032 року цей показник має досягти майже 70 мільярдів доларів.

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

Своєю думкою про перспективи цього напряму у світі загалом і в Україні зокрема з нами поділився визнаний експерт у цій галузі Анатолій Тимощук.

Анатолій — досвідчений інженер із автоматизації тестування з багаторічним досвідом роботи в галузі контролю якості. Він має глибокі знання в розробці автоматизованих тестових платформ і значний досвід роботи над великими міжнародними проєктами. Працюючи в Grid Dynamics, він брав участь у розробці автоматизованого фреймворку для мобільних застосунків Nike і SNKRS на платформі iOS з використанням Swift та XCUITest. Його робота значно підвищила ефективність процесу тестування, пришвидшивши випуск оновлень і покращивши якість продукту. У компанії EPAM Systems Анатолій працював над внутрішніми проєктами, пов'язаними з хмарними технологіями. Він брав участь у розробці автоматизованих тестових рішень для хмарної платформи EPAM з використанням Java, Selenium і Selenide. Його внесок допоміг покращити якість послуг і підвищити надійність хмарних рішень компанії. У Andersen Lab він працював над розробкою сценаріїв автоматизованого тестування фінтех-продукту Paysera, які забезпечують стабільність і безпеку фінансових транзакцій. Окрім безпосередньої роботи, Анатолій активно навчає і наставляє нових спеціалістів у галузі контролю якості й автоматизації тестування, проводить лекції та майстер-класи. Заслуги Анатолія визнані на високому рівні. Він був удостоєний національної нагороди України «Золотий символ якості національних товарів і послуг України» та Ордена «Лідер України», якими був нагороджений 20 серпня 2024 року на урочистому заході, присвяченому Дню Незалежності України.

Анатолій Тимощук: Вкладення в автотестування завжди окупаються - today.ua

Хоча початкові інвестиції в автоматизацію тестування можуть бути досить значними, з часом вони обов'язково окупаються, — підкреслює Анатолій. Автоматизовані тести можна запускати не раз і не два, причому без додаткових витрат з боку компанії. Це дуже вигідно, зокрема, для довгострокових проєктів із частими релізами, де ручне тестування може вимагати значних ресурсів протягом усього життєвого циклу конкретного ІТ-продукту.

Як приклад Анатолій згадує про те, як саме його робота і внесок дозволили значно покращити роботу певних проєктів. «Одним із визначних випадків, коли мій внесок суттєво покращив проєкт, була моя участь у розробці автоматизованої системи тестування для одного фінансового застосунку, — розповідає він. — Тоді команда зіткнулася з проблемою повільних циклів випуску через тривале ручне тестування, і це дуже погано позначалося на конкурентоспроможності продукту. Перед командою QA було поставлене завдання виправити ситуацію, і ми запропонували впровадити автоматизоване тестування з використанням інструмента для автоматизації Selenium WebDriver у поєднанні з мовою програмування Java. Після детального аналізу вимог і розробки сценаріїв тестування ми автоматизували ключові функціональні тести. Крім того, ми налаштували інтеграцію з системою безперервної інтеграції Jenkins, яка дозволяла запускати тести при кожному коміті в репозиторій. У результаті час, витрачений на регресійне тестування, скоротився на 30%, а кількість дефектів, виявлених у процесі виробництва, — на 10%. Це не лише прискорило випуск нових версій, а й покращило загальну якість продукту та стабільність середовища, спростивши роботу ручного тестування».

Анатолій Тимощук: Вкладення в автотестування завжди окупаються - today.ua

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

Особливо важливу роль автоматичне тестування відіграє під час розробки фінансових застосунків. Як у світі, так і в Україні. «Я вважаю, що автотестування важливе під час налагодження фінансових, медіа- та інших застосунків, орієнтованих на користувача», — говорить Анатолій. «По-перше, використання таких засобів автоматизації, як Selenium, Appium чи JMeter, дозволяє швидко й ефективно виконувати регресійні та навантажувальні тести. Це пришвидшує цикл розробки та забезпечує стабільність застосунку після внесення змін у код. По-друге, автоматизація дозволяє охопити складні, багатоваріантні сценарії тестування, включаючи паралельне тестування на різних платформах і конфігураціях. Для фінансових застосунків це особливо важливо через необхідність дотримання нормативних вимог і забезпечення високого рівня безпеки даних», — зазначає він.

«По-третє, — підкреслює Тимощук, — автоматизоване тестування зводить до мінімуму людський фактор, забезпечуючи повторюваність і точність результатів. Інтеграція з системами безперервної інтеграції та безперервного постачання (CI/CD) дозволяє швидко знаходити й усувати дефекти на ранніх стадіях розробки. Крім того, використання підходів TDD (розробка, основана на тестуванні) і BDD (розробка, основана на поведінці) в автоматизації сприяє більш якісному проєктуванню коду та кращому розумінню вимог. У кінцевому підсумку автоматизація оптимізує використання ресурсів, дозволяючи команді зосередитися на більш складних завданнях, таких як попереднє тестування чи поліпшення користувацького досвіду, що, своєю чергою, підвищує якість кінцевого продукту».

.