如何调试Vsix项目



我正在为我的项目创建一个自定义测试运行器。因此,我创建了一个测试vsix项目,可以在Visual Studio中注册。

我也知道我通过F5加载扩展,然后加载Visual Studio的实验实例,但是在我创建vsix的Visual Studio实例中没有命中断点。

有人知道怎么调试它吗?

我已经构建了一些Visual Studio扩展,我从来没有找到一个好的方法来调试VSIX。您可以启动一个实验实例,但我发现这是最慢的可能性。

这是我使用的工作流程:

  • 打开Visual Studio实例进行开发。加载解决方案。
  • 安装。vsix(双击bindebug中的vsix文件)
  • 启动一个新的Visual Studio实例进行测试。
  • 在Dev Visual Studio中,Debug -> Attach to Process,选择devenv.exe
  • 在Dev Visual Studio中设置一些断点。
  • 在Test Visual Studio中创建/打开新的解决方案并开始测试编码。

我发现这比启动VS实验实例快得多。但它仍然是相当艰巨的。

我强烈推荐的另一件事是,抽象尽可能多的Visual Studio API,你可以做单元测试,在Visual Studio中只做最少的测试。例如,在我现在正在做的一个项目中,pMixins,我已经抽象出了VisualStudio事件系统(VisualStudioEventProxy),这样我的基础设施就不会对事件api有硬性依赖,我可以编写一个模拟事件的测试。

有点晚了,但可能对别人有帮助。

我在这里发现的一个建议帮助我解决了在VS2012中调试.vsix组件的问题。简而言之:添加到项目属性"start external program:"[你的visual studio路径],添加到"Command line arguments" /rootsuffix Exp .

相关内容

  • 没有找到相关文章

最新更新