SuperAPI AI 工具集

testing

测试与质量

查看项目

更新于 10-16 08:44

技能介绍

用途:为 B2C CLI 项目(salesforcecommercecloud/b2c-developer-tooling)编写和维护测试,覆盖单元测试与集成测试、使用 MSW 模拟 HTTP 请求、测试 CLI 命令等场景。

技术栈:Mocha(测试运行器)、Chai(断言)、MSW(HTTP 模拟)、Sinon(打桩/模拟)、c8(覆盖率)、tsx(直接执行 TypeScript)。

运行方式:面向编码代理可用 pnpm run test:agent(仅显示失败与摘要),也可按包过滤;调试用 pnpm run test(含覆盖率)、pnpm mocha 运行单个文件、pnpm mocha --grep 按模式过滤、test:watch 进入 TDD 监视模式。覆盖率报告位于 coverage/index.html。

主要约定:测试文件放在 test/ 下并镜像源码目录结构,使用 .test.ts 后缀;导入一律使用包导出路径而非相对路径,保证与使用方一致。涉及缺省配置的场景需用 isolateConfig()/restoreConfig() 隔离真实的 ~/.mobify、dw.json 与环境变量;MRT 凭据可用 credentialsFile 指向 /dev/null 或通过 stubParse 的 credentials-file 标志隔离。HTTP 测试用 MSW 的 setupServer 搭配 MockAuthStrategy;轮询测试不要用假定时器,改用短 pollInterval。命令测试可用 stubParse、runSilent 辅助,避免只断言标志值等于模拟值这类无价值测试;stubParse 会自动设置静默日志级别。

限制与注意:MSW v2 内部依赖微任务,使用假定时器会导致其 Promise 无法解析;unhandled 请求可通过 onUnhandledRequest: 'error' 暴露;忘记 restoreConfig() 会造成环境变量在测试间泄漏;导入路径错误需检查 package.json 的 exports 配置。具体测试数量、版本号与更多辅助函数清单资料未完整提供。