vscode API文档包括a page on how to test extensions。当您有一个没有依赖项的扩展名时,此方法效果很好。但是,在我们的情况下,由于扩展名取决于hbenl.vscode-test-explorer
,因此我们extensionDependencies
。
在我们的CI服务器上,我们遇到一个问题,直到安装了此依赖项,我们才能运行测试,但是vscode的测试API不会暴露任何API来安装扩展。
我们可以下载我们自己的vscode副本,并使用--install-extension
命令安装此依赖项,但这使事情变得复杂,因为现在我们正在管理API用来管理的下载。
我想探讨两种合理的可能性:
extensionDependencies
?vscode-test
运行中下载依赖项?答案 0 :(得分:1)
不知何故,我在文档中错过了这一点。 Custom setup with vscode-test
。
该代码在链接上可用,因此我不会全部复制。这是最相关的部分:
const vscodeExecutablePath = await downloadAndUnzipVSCode('stable');
const cliPath = resolveCliPathFromVSCodeExecutablePath(vscodeExecutablePath);
// Use cp.spawn / cp.exec for custom setup
cp.spawnSync(cliPath, ['--install-extension', '<EXTENSION-ID-OR-PATH-TO-VSIX>'], {
encoding: 'utf-8',
stdio: 'inherit'
});