vscode 当通过测试资源管理器运行测试时,覆盖率会消失,

cngwdvgl  于 4个月前  发布在  Vscode
关注(0)|答案(2)|浏览(102)

当所有扩展都被禁用时,这个问题是否发生?:是/否
否(因为覆盖率

  • VS Code 版本:1.88.1 和 1.90 内部预览版
  • OS 版本:SLED 15 和 Windows 10

重现步骤:
我开发了一个使用从1.88开始的新覆盖率API的扩展,遇到了以下问题:

  • 当通过测试资源管理器运行覆盖率分析时,覆盖率数据在很短的时间内出现然后消失

  • 当通过我自己的自定义命令运行覆盖率分析时,覆盖率仍然可用

我已经确保在两种情况下调试了 runHandler 的输入参数,它们都是相同的。
我能看到的唯一区别是在情况1(资源管理器)中的调用堆栈:

与情况2(命令)中的调用堆栈:

当我在运行处理程序的最后一个花括号处设置断点时,覆盖率会保持到调用堆栈中的某个地方,但我无法查看:

我不知道还能尝试什么来解决这个问题。
覆盖率被正确添加,因为它会在程序暂停时保持不变,而且通过代码镜头命令执行时会永远保持。

kt06eoxx

kt06eoxx1#

你能分享一下你的扩展的源代码吗?这样我就可以深入了解一下。

o7jaxewo

o7jaxewo2#

在创建一个小复现扩展时,我注意到我可以通过文本资源管理器找到通过Test Results视图启动的运行的覆盖率:

虽然这并不能解释为什么覆盖率会在关闭之前短暂出现,但使用命令testing.openCoverage显示一条消息,表示没有可用的覆盖率数据:

我的settings.json文件如下所示:

{
    "git.openRepositoryInParentFolders": "never",
    "workbench.startupEditor": "none",
}

相关问题