Лена, прости! Или как мы заменили QA тестировщика на автономного AI-агента за 24 часа
В стартапе на стадии Pre-Seed/Seed вы либо фанатично считаете деньги, либо умираете. В RankCaster AI мы уперлись в классическую ловушку масштабирования: больше фич = больше людей в QA = раздутый COGS и медленные релизы.
Регрессионный анализ каждого апдейта занимал до 48 часов ручного труда. Мы решили, что платить за «прокликивание» дашбордов в 2026 году — это грех, и собрали автономного AI-агента, который делает это лучше человека.
1. Стек: Без фреймворков и лишнего кода
Мы не стали тратить недели на Selenium или Cypress. Наш стек был развернут за ~1 рабочий день:
-
Claude Code: AI-агент, наш «мозг» и оператор.
-
agent-browser (Rust daemon + Chrome CDP): «Тело», которое управляет реальным Chrome через CLI.
-
SSH / psql: Прямой доступ к базе данных для кросс-валидации данных.
Как мы это запустили: Установили agent-browser глобально, создали QA-аккаунт на бете и прописали один файл памяти с паттернами команд. Всё. Никаких тест-скриптов, никакого кастомного кода, никакого фреймворка.
2. Как это работает: Один проход — три уровня проверки
Claude порождает субагента, который через CLI-команды (open, snapshot -i, fill, click) управляет браузером. Он ведет себя как живой пользователь, но с рентгеновским зрением:
-
Zero Test Maintenance: Агент считывает Accessibility Tree (дерево доступности), а не жесткие CSS-селекторы. Если мы поменяем id кнопки или перекрасим её, бот не сломается — он поймет смысл элемента и адаптируется.
-
Кросс-слойная валидация: За один проход бот проверяет UI, API и базу данных. Он кликает по фильтру и тут же через SSH проверяет: «Совпадают ли цифры в интерфейсе с результатами сырого SQL-запроса?». Человеку или обычному E2E-тесту такая связка недоступна.
-
Сессионная память: Куки выживают после перезапуска. Бот не тратит время на логин при каждой проверке — он сразу переходит к делу.
3. Реальные баги, которые не нашел бы человек
Этот агент — не просто «кликер», а исследователь. Вот что он выцепил за первую неделю:
-
APR Error 14%: Бот нашел пропущенный фильтр в БД, который вызывал ошибку в расчете годовой ставки сразу в 5 API-маршрутах. Ни ручной тестер, ни скрипт этого не видели, потому что визуально всё выглядело «ок».
-
CSS Clipping: Конфликт высот в CSS обрезал столбцы на графиках. Агент проанализировал визуальный рендеринг и сам нашел причину в коде.
-
On-demand расследование: Мы не пишем скрипты. Мы описываем задачу на английском: «Проверь, как работает биллинг для новых юзеров из ЕС». Через 10 минут получаем отчет с root-cause анализом и скриншотами.
Важный дисклеймер: Это не замена CI-тестам. Агент исследует и находит баг. Как только баг найден, мы пишем детерминированный тест на Vitest, чтобы закрепить результат. AI ведет разведку — код охраняет границы.
4. Roadmap: Куда мы ведем AI QA Агента
Мы строим систему, где деплой защищен алгоритмами.
-
CI/CD Integration: Включаем агента в GitHub Actions. После деплоя на бету Claude прогоняет Smoke-тест (логин, отчеты, биллинг), сверяет APR с базой и, если что-то не так, блокирует PR, оставляя отчет в комментариях.
-
Семантическая регрессия: Агент будет сравнивать скриншоты не по пикселям, а по смыслу. Ему плевать на сдвиг паддинга в 2px, но он заблокирует релиз, если в чарте пропали данные.
-
Customer-Triggered QA: Если клиент жалуется на баг, система автоматом логинится в его контекст, воспроизводит сценарий, лезет в его данные в БД и кидает готовый диагноз прямо в Jira-тикет. От тикета до Root Cause — минуты.
-
Multi-Model Validation: Мы добавляем новые LLM (Perplexity, Claude, DeepSeek). Агент будет постоянно проверять, что расчеты APR во всех моделях идентичны, сравнивая их ответы с эталоном в БД.
-
Self-Healing: Агент находит баг → сам генерирует Vitest-тест → открывает PR. Круг «обнаружение — фиксация — защита» замыкается без участия человека.
Это и есть эффективный R&D в 2026 году. Мы не нанимаем людей для рутины — мы пишем софт, который заменяет людей. Лучший способ доказать своим инвесторам, что мы заботимся об их деньгах.
Автор: Emelian1917

