Сборка и Тестирование
Полное руководство по сборке, тестированию и отладке Gemini CLI
Процесс Сборки
Понимание системы сборки и рабочего процесса разработки
npm run bootstrap
Установить зависимости и связать пакеты
Usage:
Первоначальная настройка и после добавления новых зависимостей
npm run build
Собрать все пакеты в порядке зависимостей
Usage:
Перед тестированием или выпуском
npm run build:watch
Собрать пакеты в режиме наблюдения
Usage:
Во время активной разработки
npm run clean
Очистить артефакты сборки и node_modules
Usage:
При возникновении проблем со сборкой
Фреймворк Тестирования
Комплексное тестирование с Jest и TypeScript
npm run test
Запустить все тесты во всех пакетах
Usage:
Выполнение полного набора тестов
npm run test:watch
Запустить тесты в режиме наблюдения
Usage:
Во время разработки
npm run test:coverage
Сгенерировать отчеты о покрытии тестами
Usage:
Обеспечение качества и CI/CD
lerna run test --scope @gemini/core
Запустить тесты для конкретного пакета
Usage:
Целенаправленное тестирование
Рабочий Процесс Разработки
Рекомендуемый рабочий процесс разработки и тестирования
Первоначальная Настройка
Настроить среду разработки и установить зависимости
git clone https://github.com/google-gemini/gemini-cli.git && cd gemini-cli && npm run bootstrap
Режим Разработки
Запустить режим наблюдения для автоматической пересборки
npm run build:watch
Тестирование
Непрерывно запускать тесты во время разработки
npm run test:watch
Проверка Качества
Запустить проверки кода, форматирование и проверку типов перед коммитом
npm run lint && npm run type-check && npm run test:coverage
Отладка
Инструменты и методы для отладки проблем
Режим Отладки
Включить журналирование отладки для подробного вывода
DEBUG=gemini:* gemini ask "Привет"
Это покажет подробные журналы для всех операций Gemini CLI
Отладка VS Code
Использовать предоставленную конфигурацию запуска VS Code
.vscode/launch.json
Установить точки останова и отлаживать прямо в VS Code
Отладка Тестов
Отладить конкретные тесты
npm run test -- --testNamePattern="API Client"
Запустить и отладить конкретные тестовые случаи
Профилирование Производительности
Профилировать проблемы производительности
node --prof packages/cli/bin/gemini
Сгенерировать профили производительности для анализа
Непрерывная Интеграция
Автоматизированное тестирование и обеспечение качества
Сборка
Скомпилировать TypeScript и собрать все пакеты
Тестирование
Запустить модульные тесты и сгенерировать отчеты о покрытии
Развертывание
Опубликовать пакеты и развернуть документацию
Распространенные Проблемы
Решения распространенных проблем сборки и тестирования
Сбои Сборки
Если сборка не удается после получения изменений, попробуйте очистить и переустановить
npm run clean && npm run bootstrap && npm run build
Сбои Тестов
Для периодических сбоев тестов запустите тесты с увеличенным таймаутом
npm run test -- --testTimeout=10000
Проблемы с Памятью
Если вы сталкиваетесь с ошибками нехватки памяти во время сборки
NODE_OPTIONS="--max-old-space-size=4096" npm run build
Следующие Шаги
Продолжите свое путешествие в разработке с этими ресурсами