> For the complete documentation index, see [llms.txt](https://vladislaveremeev.gitbook.io/qa_bible/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://vladislaveremeev.gitbook.io/qa_bible/ai-v-testirovanii/ai-augmented-development.md).

# AI-Augmented Development

**AI-Augmented Development** — подход к разработке, при котором AI выступает в роли умного ассистента, встроенного в рабочий процесс разработчика. Разработчик сохраняет полный контроль над кодом и архитектурными решениями; AI ускоряет рутинные операции: автодополнение, генерацию шаблонного кода, объяснение чужого кода, рефакторинг.

Это наиболее распространённый и зрелый вид AI Driven Development — большинство команд начинают именно с него.

***

## Что делает AI в этом подходе

### Основные функции AI-ассистента

| Функция             | Описание                                             | Пример                                  |
| ------------------- | ---------------------------------------------------- | --------------------------------------- |
| Автодополнение кода | Предсказывает следующие строки по контексту          | Дописывает тело функции по её сигнатуре |
| Генерация шаблонов  | Создаёт boilerplate-код по описанию                  | CRUD-операции, DTO-классы, конфиги      |
| Объяснение кода     | Описывает на естественном языке, что делает фрагмент | Помогает разобраться в legacy-коде      |
| Рефакторинг         | Предлагает улучшенную версию существующего кода      | Упрощение цикла, замена паттерна        |
| Генерация тестов    | Создаёт юнит-тесты по существующему коду             | Покрытие написанных методов             |
| Поиск ошибок        | Подсвечивает потенциальные проблемы                  | Null pointer, off-by-one ошибки         |
| Документирование    | Генерирует JSDoc, docstrings, README                 | По сигнатурам функций                   |
| Code review         | Комментирует PR, предлагает улучшения                | Style, логика, производительность       |

***

## Инструменты

### IDE-интеграции

| Инструмент             | Поддерживаемые IDE                  | Особенности                              |
| ---------------------- | ----------------------------------- | ---------------------------------------- |
| GitHub Copilot         | VS Code, JetBrains, Vim/Neovim      | Самый распространённый, обучен на GitHub |
| Cursor                 | Собственный редактор (fork VS Code) | Мощный чат с доступом к кодовой базе     |
| JetBrains AI Assistant | Все JetBrains IDE                   | Глубокая интеграция с IDE-функциями      |
| Codeium                | VS Code, JetBrains, и другие        | Бесплатный план, хорошая скорость        |
| Amazon Q Developer     | VS Code, JetBrains                  | Интеграция с AWS-экосистемой             |
| Tabnine                | Широкий список IDE                  | Возможность локального запуска модели    |

### Специализированные AI-инструменты

* **Aider** — AI-пара в терминале, редактирует файлы по инструкциям в диалоге
* **Continue** — open-source AI-ассистент для VS Code и JetBrains
* **Supermaven** — сверхбыстрое автодополнение с большим контекстным окном

***

## Как меняется процесс разработки

### Скорость итераций

Исследования GitHub (2024) показывают, что разработчики с Copilot выполняют типовые задачи на 55% быстрее. Это означает:

* Больше фич за тот же спринт
* Более частые коммиты
* Сжатые временные рамки для QA

{% hint style="warning" %}
Ускорение разработки без масштабирования QA-процессов приводит к накоплению непротестированного кода. Команде нужно заранее договориться, как QA будет успевать за возросшим темпом.
{% endhint %}

### Характеристики AI-Augmented кода

**Что улучшается:**

* Стандартный boilerplate — AI генерирует его корректно и быстро
* Покрытие юнит-тестами — разработчик охотнее пишет тесты, если AI берёт рутину
* Единообразие кода — AI придерживается паттернов из контекста

**Что ухудшается или остаётся проблемой:**

* Комментарии и документация — AI-автодополнение редко добавляет их сам
* Устаревшие паттерны — AI обучен на старом коде, может воспроизводить deprecated подходы
* Безопасность — AI воспроизводит небезопасные паттерны из обучающих данных

***

## Влияние на QA-процессы

### Что меняется для QA

**Скорость поставки:** Релизы становятся частыми. QA должен быть готов тестировать регулярно, а не раз в несколько недель. Автоматизация становится не желательной, а обязательной.

**Характер дефектов:** AI-код склонен к определённым классам ошибок:

* Корректная реализация не того требования (AI «додумал» логику)
* Отсутствие обработки исключений в нетипичных сценариях
* Устаревшие API и методы, использованные по данным обучения

**Объём кода для ревью:** Разработчики генерируют больше кода. Если раньше PR содержал 200 строк, теперь может содержать 600. QA должен тестировать функциональность, а не тратить время на чтение кода.

### Специфика тест-дизайна

При тестировании AI-Augmented кода уделяйте особое внимание:

1. **Валидация против требований** — AI мог реализовать логику «по-своему», а не по спецификации
2. **Граничные условия** — автодополнение оптимизирует под очевидные сценарии
3. **Обработка ошибок** — проверьте, как система ведёт себя при некорректных входных данных и сбоях зависимостей
4. **Безопасность** — базовое OWASP-тестирование, особенно для кода, работающего с пользовательскими данными
5. **Совместимость** — AI может использовать API версии, несовместимой с текущей средой

***

## AI-Augmented Code Review: роль QA

QA может использовать те же AI-инструменты для ускорения тест-дизайна:

```
Разработчик создаёт PR → AI-ревью предлагает правки
                                    ↓
QA получает описание изменений → AI генерирует черновик тест-кейсов
                                    ↓
QA дополняет, верифицирует, запускает
```

### Промпт-шаблоны для QA

**Анализ изменений:**

```
Вот diff этого PR: [вставить diff]
Перечисли все сценарии, которые нужно протестировать, с особым вниманием
к edge cases и потенциальным регрессиям.
```

**Генерация тест-кейсов:**

```
Вот функция: [вставить код]
Напиши тест-кейсы для позитивных сценариев, негативных сценариев
и граничных значений. Формат: Given/When/Then.
```

***

## Сравнение с другими AI-подходами

| Параметр              | AI-Augmented Dev | Vibe Coding   | Agentic Development |
| --------------------- | ---------------- | ------------- | ------------------- |
| Контроль разработчика | Полный           | Минимальный   | Разделённый         |
| Понимание кода        | Полное           | Частичное     | Частичное           |
| Скорость              | Высокая          | Очень высокая | Высокая             |
| Предсказуемость       | Высокая          | Низкая        | Средняя             |
| Порог входа           | Низкий           | Минимальный   | Средний             |
| Риски для QA          | Умеренные        | Высокие       | Специфические       |

***

## Адаптация QA-команды

### Практические шаги

1. **Внедрить AI в тест-дизайн** — использовать AI для генерации черновиков тест-кейсов и чеклистов
2. **Ускорить автоматизацию** — AI существенно снижает стоимость написания автотестов; используйте это
3. **Договориться о Definition of Done** — в DoD должно быть явно прописано, что QA-покрытие не снижается из-за скорости генерации
4. **Настроить CI-пайплайн** — при росте частоты коммитов без CI с автотестами качество деградирует
5. **Ревью AI-сгенерированных тестов** — если разработчик использует AI для написания юнит-тестов, QA должен их ревьюить на полноту и корректность

{% hint style="info" %}
AI-Augmented Development — наиболее низкорисковая точка входа в AI Driven Development для QA-команды. Начните с использования AI в своей собственной работе: генерация тест-кейсов, анализ требований, написание автотестов.
{% endhint %}

***

## Источники

* [GitHub — The Economic Impact of the AI-Powered Developer Lifecycle (2024)](https://github.blog/news-insights/research/) — исследование производительности с Copilot
* [DORA — State of DevOps 2024](https://dora.dev/research/) — данные о влиянии AI на метрики DevOps
* [GitHub Copilot Documentation](https://docs.github.com/en/copilot) — официальная документация
