2

我们在开发机器和 TFS 构建代理上使用 Visual Studio 2013。IntelliSense 不应该在我们正在使用的版本(Premium)中可用,但在构建代理上,它以某种方式与 MSTest 一起运行(通过观察 IntelliTrace.exe 作为 vstest.executionengine.exe 的子进程运行并编写大量 *.iTrace 文件到 C:\Windows\Temp)。这既会消耗磁盘空间,又会通过人为地绑定磁盘来显着减慢测试运行速度。

问题是似乎没有任何方法可以阻止 IntelliTrace 运行。这个版本的 VS2013 没有在 Tools->Options 列表中显示它,所以我们不能使用基于 UI 的方法来禁用它。我们的自定义工作流将 /p:EnableIntelliTrace=false 作为 MSBuild 参数传递,但无效。

有人知道我们可以通过其他方式禁用它,同时仍然通过构建和测试运行吗?(注册表、文件重命名等)。我们预计不必在相关机器上运行 IntelliTrace。

4

3 回答 3

1

您可以在 MSbuild 期间删除/p:EnableIntelliTrace=true而不是 禁用 IntelliTrace 运行。/p:EnableIntelliTrace=false

如果这对您的构建代理没有影响。它似乎与您的构建代理上的 VS 有关。尝试禁用 testsettings 文件的设置,然后重试。详细步骤可以参考这个链接:How to disable / turn off IntelliTrace on TFS MsBuild server?

此外,应该有与 VS2013 一起使用 IntelliTrace 的选项。请使用 Visual Studio 2013 Preview 查看此博客IntelliTrace的信息
在此处输入图像描述

于 2016-04-13T13:07:25.790 回答
0

由于 VS 2012 IntelliTrace 和其他数据收集器是在.testsettings配置文件中配置的。如果此文件未明确给出,则使用默认文件。我不确定,但在我看来,在您的情况下,IntelliTrace 是在默认配置中启用的。我的建议是尝试以下步骤:

  1. .testsettings文件添加到解决方案。为此,请右键单击 VS 中的解决方案。然后选择Add -> New item...并找到Test Settings
  2. 一个新的配置文件将添加到您的解决方案中,默认情况下应禁用 IntelliTrace。如果双击此文件,将显示一个带有各种选项的新窗口,以便您验证配置是否正确。
  3. 告诉MSTest使用您自己的.testsettings文件。可以使用/testsettings参数来完成。
于 2016-04-27T06:48:58.200 回答
0

您仍然可以使用 .runsettings 禁用 IntelliTrace ( https://msdn.microsoft.com/en-us/library/jj635153.aspx?f=255&MSPPError=-2147217396 )。它没有记录在任何地方。只需从 .testsettings 文件复制 DataCollector for IntelliTrace 并禁用所有收集。

于 2016-05-08T23:02:23.863 回答