Construcción y Pruebas

Guía completa para construir, probar y depurar Gemini CLI

BuildTesting

Proceso de Construcción

Entender el sistema de construcción y el flujo de trabajo de desarrollo

npm run bootstrap

Instalar dependencias y enlazar paquetes

Usage:

Configuración inicial y después de agregar nuevas dependencias

npm run build

Construir todos los paquetes en orden de dependencias

Usage:

Antes de probar o publicar

npm run build:watch

Construir paquetes en modo vigilancia

Usage:

Durante el desarrollo activo

npm run clean

Limpiar artefactos de construcción y node_modules

Usage:

Al encontrar problemas de construcción

Marco de Pruebas

Pruebas integrales con Jest y TypeScript

npm run test

Ejecutar todas las pruebas en todos los paquetes

Usage:

Ejecución completa de la suite de pruebas

npm run test:watch

Ejecutar pruebas en modo vigilancia

Usage:

Durante el desarrollo

npm run test:coverage

Generar informes de cobertura de pruebas

Usage:

Aseguramiento de calidad y CI/CD

lerna run test --scope @gemini/core

Ejecutar pruebas para paquete específico

Usage:

Pruebas enfocadas

Flujo de Trabajo de Desarrollo

Flujo de trabajo de desarrollo y pruebas recomendado

1

Configuración Inicial

Configurar el entorno de desarrollo e instalar dependencias

git clone https://github.com/google-gemini/gemini-cli.git && cd gemini-cli && npm run bootstrap
2

Modo Desarrollo

Iniciar modo vigilancia para reconstrucción automática

npm run build:watch
3

Pruebas

Ejecutar pruebas continuamente durante el desarrollo

npm run test:watch
4

Verificación de Calidad

Ejecutar verificaciones de código, formateo y verificación de tipos antes del commit

npm run lint && npm run type-check && npm run test:coverage

Depuración

Herramientas y técnicas para depurar problemas

Modo Depuración

Habilitar registro de depuración para salida detallada

DEBUG=gemini:* gemini ask "Hola"

Esto mostrará registros detallados para todas las operaciones de Gemini CLI

Depuración VS Code

Usar la configuración de lanzamiento de VS Code proporcionada

.vscode/launch.json

Establecer puntos de interrupción y depurar directamente en VS Code

Depuración de Pruebas

Depurar pruebas específicas

npm run test -- --testNamePattern="API Client"

Ejecutar y depurar casos de prueba específicos

Perfilado de Rendimiento

Perfilar problemas de rendimiento

node --prof packages/cli/bin/gemini

Generar perfiles de rendimiento para análisis

Integración Continua

Pruebas automatizadas y aseguramiento de calidad

Construcción

Compilar TypeScript y construir todos los paquetes

Pruebas

Ejecutar pruebas unitarias y generar informes de cobertura

Despliegue

Publicar paquetes y desplegar documentación

Problemas Comunes

Soluciones a problemas comunes de construcción y pruebas

Fallos de Construcción

Si las construcciones fallan después de obtener cambios, intenta limpiar y reinstalar

npm run clean && npm run bootstrap && npm run build

Fallos de Pruebas

Para fallos intermitentes de pruebas, ejecuta pruebas con tiempo de espera aumentado

npm run test -- --testTimeout=10000

Problemas de Memoria

Si encuentras errores de memoria insuficiente durante las construcciones

NODE_OPTIONS="--max-old-space-size=4096" npm run build