如何测试仅使用 .vsix 作为输入工件的 VS Code 扩展?

问题描述 投票:0回答:1

我是这个领域的超级新手,我希望这不是一个愚蠢的问题。是否可以在不使用开发源代码构建的情况下测试 VS Code 扩展?
我们正在尝试开发一个由我们组织开发的多个扩展的测试自动化框架。要求是我们应该仅使用“.vsix”文件(由管道打包)进行测试。
我搜索了几个工具,但它们要么需要源代码来构建扩展,要么不适合这种情况(我稍后将提供详细信息)

主要尝试了2个选项:

  1. vscode-extension-tester:https://github.com/redhat-developer/vscode-extension-tester但这需要构建扩展
  2. code-server:https://github.com/coder/code-server 这允许在 VS Code 的浏览器实例中安装和运行扩展,并将一切转变为 Web GUI 测试。但是,它并不能保证浏览器实例与实际浏览器实例之间的行为完全相同。
automated-tests vscode-extensions
1个回答
0
投票

我对第一种方法(使用 vscode 扩展测试器)是错误的。用户可以使用 .vsix 工件作为依赖项。

我们可以从使用提供的“helloworld”示例开始:https://github.com/redhat-developer/vscode-extension-tester/tree/main/sample-projects/helloworld-sample

然后修改“package.json”,更新以下行:

"install-vsix": "extest install-vsix -f {PATH_TO_VSIX} --extensions_dir .test-extensions",
"ui-test": "extest setup-tests --extensions_dir .test-extensions && npm run install-vsix && extest run-tests './out/ui-test/*-test.js' --code_settings settings.json --extensions_dir .test-extensions" 

这允许用户无需构建扩展即可工作。然后,所有的工作就是如何使用这个包了。更多信息请参考:https://github.com/redhat-developer/vscode-extension-tester/wiki

© www.soinside.com 2019 - 2024. All rights reserved.