Тестирование документации Azure Drasi с GitHub Copilot
Кратко
Команда Drasi создала автоматизированный процесс тестирования документации с использованием GitHub Copilot CLI, Dev Containers, Playwright и GitHub Actions. Рассматривая AI-агента как синтетического нового пользователя, проект теперь может раньше выявлять неработающие руководства и расхождения в документации, помогая поддерживать надежный онбординг для разработчиков.
Введение
Сбои в документации могут быть столь же вредны, как и ошибки в коде, особенно для open-source проектов, где руководство по началу работы становится первым опытом разработчика. В новом материале команда Drasi при поддержке Azure объяснила, как превратила проверку документации в автоматизированный процесс мониторинга с помощью GitHub Copilot.
Что нового
Drasi создала подход к тестированию на базе AI, который имитирует действия пользователя, впервые проходящего руководства строго по написанным шагам.
Ключевые элементы решения
- GitHub Copilot CLI выступает как буквальный, наивный агент, который выполняет шаги точно так, как они описаны в документации.
- Dev Containers воссоздают ту же среду, которую пользователи видят в GitHub Codespaces.
- Playwright проверяет поведение веб-интерфейса и сохраняет скриншоты для сравнения.
- GitHub Actions автоматически запускает процесс еженедельно и параллельно для разных руководств.
Команда отметила, что этот подход появился после реального сбоя: обновление инфраструктуры Dev Container повысило минимальную требуемую версию Docker и нарушило работу руководств Drasi без немедленной видимости проблемы. Ручное тестирование не выявило это достаточно быстро.
Почему это важно для IT-специалистов и разработчиков
Для команд Azure и платформенных команд это полезный пример применения AI-агентов за пределами генерации кода. Документация часто ломается из-за:
- Скрытых допущений со стороны опытных авторов
- Расхождений между изменениями продукта и шагами в руководствах
- Изменений во внешних зависимостях в таких инструментах, как Docker, Kubernetes или базы данных
Используя Copilot как «синтетического пользователя», команды могут выявлять неясные шаги, неудачные команды и несоответствие выходных данных до того, как с этими проблемами столкнутся клиенты или участники проекта.
Вопросы безопасности и надежности
В реализации Drasi безопасность сосредоточена на границе контейнера, а не на попытках ограничить каждую команду по отдельности. Процесс использует:
- Изолированные эфемерные контейнеры
- Ограниченные разрешения токенов
- Отсутствие исходящего сетевого доступа за пределы localhost
- Этапы утверждения со стороны сопровождающих перед выполнением
Чтобы управлять недетерминированностью AI, команда также добавила повторные попытки, эскалацию модели, семантическое сравнение скриншотов и строгие ограничения в prompt, чтобы получать машиночитаемый результат pass/fail.
Следующие шаги для администраторов и инженерных команд
Если ваша команда публикует внутренние runbook, руководства по онбордингу или публичные tutorials, за этим подходом стоит следить. Рассмотрите следующие шаги:
- Определите документацию с высокой ценностью, которая часто ломается
- Тестируйте документацию в той же среде, которую реально используют ваши пользователи
- Сохраняйте логи, скриншоты и отчеты как артефакты для устранения неполадок
- Добавьте плановую проверку в CI/CD-конвейеры
Пример Drasi показывает, что AI-агенты могут выступать практичными тестировщиками документации, помогая командам снижать нагрузку на поддержку и улучшать опыт разработчиков в масштабе.
Нужна помощь с Azure?
Наши эксперты помогут вам внедрить и оптимизировать решения Microsoft.
Поговорить с экспертомБудьте в курсе технологий Microsoft