SuperAPI AI 工具集

integration-tests

测试与质量

查看项目

更新于 10-16 03:05

技能介绍

用途:运行需要本地 npm 注册表(Verdaccio)的集成测试流水线,适用于执行集成测试或本地发布工作流。

主要能力:先以子进程后台启动本地注册表,再在主进程执行构建、重置、发布与集成测试,最后关闭注册表进程并返回结果。

使用方式:

  1. 启动本地注册表:pnpm local-npm:start,保留会话 id,等待 Verdaccio 就绪(监听消息或 http://localhost:4873)。若端口被占用,仅在确认是预期本地注册表时继续,否则停止并重启。
  2. 在主进程按顺序执行:pnpm i && pnpm build:ci && pnpm local-npm:reset && pnpm local-npm:publish && OPENAI_AGENTS_RUN_STORAGE_MOUNT_INTEGRATION=1 pnpm test:integration。使用 build:ci 以验证与 GitHub Actions 相同的序列化构建路径;设置该环境变量以默认运行可选的存储挂载覆盖(本地 Azurite 与 MinIO 冒烟测试)。不要使用 watch 模式。
  3. 清理:向注册表子进程发送 Ctrl+C 并等待退出;若未退出则按 PID 终止并确认端口释放。

执行环境:默认在 Codex 沙箱外运行(sandbox_permissions=require_escalated),因为测试套件会在 fixture 项目中执行 npm install、bun install、Deno、Wrangler、本地模拟器、Docker 等子进程,沙箱内可能因写入 ~/.npm/_cacache/tmp 或 Bun 临时目录而出现环境性失败。仅在用户明确要求时使用沙箱;若沙箱运行在依赖安装或临时/缓存写入阶段失败,应在沙箱外重跑同一流水线后再判定是否为仓库问题。

输出要求:始终在响应中包含集成测试结果,捕获 pnpm test:integration 的 stdout/stderr 并以代码块呈现(过长可裁剪明显噪声)。若某步失败,给出失败命令、错误输出摘要与下一步建议;pnpm local-npm:publish 失败时可参考 integration-tests/README.md 的恢复步骤。

限制:资料未提供具体测试覆盖范围、耗时、依赖版本要求及平台支持细节。