SuperAPI AI 工具集

run-smoke-tests

测试与质量

查看项目

更新于 10-16 00:32

技能介绍

用途:在真实 VS Code 实例中运行冒烟测试,验证扩展加载与基本功能是否正常。适用于修改扩展激活代码、调整命令或 API 导出后,提交 PR 前确认未被破坏,或用户要求“运行冒烟测试”“验证扩展可用”时。

主要能力:通过 npm run smoke-test 调用 @vscode/test-cli,下载独立 VS Code 二进制(缓存于 .vscode-test/),在该实例中安装扩展并由 Mocha 执行测试文件,结果返回终端。与使用 mock 的单元测试不同,冒烟测试能发现真实集成问题,耗时约 10–60 秒。

使用方式:运行全部测试使用 npm run compile && npm run compile-tests && npm run smoke-test;按名称运行单个测试使用 npm run smoke-test -- --grep "Extension activates";也可在 VS Code 调试面板选择“Smoke Tests”后按 F5 调试。新增测试放在 src/test/smoke/,文件名遵循 *.smoke.test.ts,用 waitForCondition() 替代 sleep(),并设置较宽超时(如 this.timeout(60_000))。

限制与前提:测试前必须用 npm run compile(webpack)构建,测试运行器依赖仅由 webpack 生成的 dist/extension.js,npm run compile-tests(tsc)不生成该文件。首次运行需下载约 100MB 的 VS Code。测试失败会自动重试一次。常见问题包括扩展未安装、激活失败、命令未注册、超时等。