用途:为 Vercel AI SDK 应用提供测试模板、模拟提供方(mock provider)与测试策略。激活场景包括:为 AI 功能编写测试、创建模拟 AI 提供方、测试流式响应、测试工具调用功能、实现测试覆盖率、对 AI 输出做快照测试。
主要资源:templates/mock-provider.ts(模拟语言模型实现)、templates/streaming-test.ts(测试流式响应)、templates/tool-calling-test.ts(测试工具执行)、templates/snapshot-test.ts(输出快照测试)、scripts/generate-test-suite.sh(生成测试脚手架)、scripts/run-coverage.sh(带覆盖率运行测试)、examples/(不同功能的完整测试套件)。
模拟提供方模式:使用 ai/test 的 createMockLanguageModelV1,示例中定义 doGenerate 返回文本、finishReason 与 usage,doStream 以异步生成器逐段 yield 文本增量并以 finish 结束。具体代码以官方模板为准。
测试策略:单元测试(模拟提供方,不调用真实 API)、集成测试(CI 中使用真实提供方并注意速率限制)、快照测试(保证输出随时间保持一致)、E2E 测试(用模拟覆盖完整用户流程)。
覆盖率目标:核心函数 >90%、错误处理 >80%、工具调用 100%、流式 >85%。
测试框架:Vitest、Jest、Node Test Runner。SDK 版本:Vercel AI SDK 5+。覆盖率工具:c8、nyc 或内置覆盖率。最佳实践:使用模拟提供方获得快速、可靠的测试。
限制:资料未提供具体安装命令、配置步骤、各类测试的完整代码示例及更多实现细节;使用前需结合上述模板与脚本自行搭建。