40% коду написано AI: що це змінює для QA інженера
На конференції Transform 2025 CEO Tricentis навів цифру, яка мала б змусити задуматися кожного в індустрії: понад 40% коду, написаного в 2025 році, було згенеровано AI-інструментами.
GitHub Copilot, Cursor, Claude, ChatGPT — мільйони розробників щодня приймають AI-пропозиції і натискають Tab. І це змінює не тільки те, як пишеться код, але й те, як потрібно його тестувати.
Чим AI-згенерований код відрізняється
Перш ніж говорити про тестування, варто зрозуміти характеристики AI-коду.
Що AI робить добре
- Шаблонний, передбачуваний код (CRUD операції, валідація, утиліти)
- Стандартні патерни (REST контролери, middleware, маппери)
- Відомі алгоритми з документації і StackOverflow
Де AI помиляється частіше
- Граничні умови. AI оптимізований для середніх сценаріїв і часто пропускає edge cases.
- Безпека. SQL injection, XSS, відсутність авторизаційних перевірок — AI генерує вразливий код якщо в промпті немає explicit вимог до безпеки.
- Доменна логіка. Бізнес-правила, специфічні для вашого продукту, AI не знає.
- Конкурентні сценарії. Race conditions, deadlocks — складно для AI.
- Помилки впевненості. AI іноді генерує код, що виглядає правильно, але робить не те. Немає "я не знаю" — є впевнений неправильний код.
Що це означає для QA стратегії
1. Більший акцент на security testing
Якщо 40% коду генерується AI без explicit security промптів — відповідно зростає ймовірність security-вразливостей у кодовій базі.
Практично: додайте OWASP-чеклист до code review і тестуйте API на базові вразливості (SQL injection, broken auth, excessive data exposure) систематично, а не "коли є час".
2. Edge cases стають вашою суперсилою
AI-розробники часто перевіряють що "основний флоу працює" і рухаються далі. Граничні умови залишаються без уваги.
QA інженер, який вміє систематично знаходити edge cases через техніки тест-дизайну (boundary value analysis, equivalence partitioning, decision tables) — стає ще ціннішим.
3. Більше коду = більший обсяг для тестування
AI прискорює розробку. Код з'являється швидше. Це означає:
- Більше фіч за той самий спринт
- Менше часу на тестування кожної фічі
- Більша потреба в автоматизації
Практично: якщо команда переходить на AI-assisted розробку — одночасно потрібно нарощувати автоматизоване покриття, інакше QA стає вузьким місцем.
4. Критичний аналіз замість довіри
Раніше код писала людина, яка розуміла що робить. Тепер код може бути написаний AI і прийнятий розробником, який не до кінця вникнув.
Для QA це означає: не довіряйте тому що "виглядає логічно". Тестуйте поведінку, а не реалізацію.
Нова навичка: тестування AI-генерованого коду
З'являється новий тип дефектів — "AI confidence bugs": код, який виконується без помилок, але робить не те що очікується.
Ознаки таких багів:
- Функція повертає результат у 95% сценаріїв, але мовчки фейлить в інших
- Валідація є, але перевіряє не ті умови
- API повертає 200 OK і некоректні дані одночасно
Як знаходити: більше тестів з перевіркою конкретних значень (assertion на дані, а не тільки на статус-коди), contract testing для API, mutation testing для перевірки якості тестів.
Можливості для QA
Це не тільки виклики — є і реальні переваги.
AI допомагає QA так само як і розробникам. Генерація тест-кейсів, написання тест-скриптів, аналіз логів — все це можна прискорити з AI. QA, який навчиться ефективно використовувати ці інструменти, буде покривати більше за той самий час.
Більше уваги до стратегії. Коли рутина автоматизована — залишається найцікавіше: визначення що тестувати, як розставляти пріоритети, де найбільший ризик.
Практичний чеклист для QA в AI-assisted команді
- Додати security-перевірки до регулярного тестового циклу (не тільки пентест раз на рік)
- Збільшити покриття edge cases в автотестах
- Перевіряти не тільки статус-коди API, але і структуру і значення відповідей
- Додати contract testing якщо є мікросервіси
- Регулярно переглядати що AI-агенти "полагодили" в тестах (self-healing звіти)
- Вчитися використовувати AI для генерації тест-кейсів і тест-даних
Підсумок
40% AI-коду — це не загроза для QA. Це зміна контексту, яка вимагає адаптації стратегії. Більший акцент на безпеку, більше уваги до edge cases, більша потреба в автоматизації.
QA інженери, які розуміють особливості AI-генерованого коду і вміють ефективно його тестувати — будуть в попиті незалежно від того, скільки відсотків коду пише AI.