构建和测试

完整的 Gemini CLI 构建、测试和调试指南

构建测试

构建过程

了解构建系统和开发工作流程

npm run bootstrap

安装依赖项并链接包

用法:

初始设置和添加新依赖项后

npm run build

按依赖顺序构建所有包

用法:

测试或发布之前

npm run build:watch

在监视模式下构建包

用法:

活跃开发期间

npm run clean

清理构建产物和 node_modules

用法:

遇到构建问题时

测试框架

使用 Jest 和 TypeScript 进行全面测试

npm run test

运行所有包的测试

用法:

完整测试套件执行

npm run test:watch

在监视模式下运行测试

用法:

开发期间

npm run test:coverage

生成测试覆盖率报告

用法:

质量保证和 CI/CD

lerna run test --scope @gemini/core

运行特定包的测试

用法:

专注测试

开发工作流程

推荐的开发和测试工作流程

1

初始设置

设置开发环境并安装依赖项

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

开发模式

启动监视模式以自动重新构建

npm run build:watch
3

测试

在开发期间持续运行测试

npm run test:watch
4

质量检查

在提交前运行代码检查、格式化和类型检查

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