【问题标题】:VS2013 + TFS: Forcibly disable IntelliTrace?VS2013 + TFS:强制禁用 IntelliTrace?
【发布时间】:2016-08-02 11:53:59
【问题描述】:

我们在开发机器和 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。

【问题讨论】:

  • 你有没有为这个@T2PS想出一个解决方案?

标签: visual-studio-2013 tfs msbuild mstest intellitrace


【解决方案1】:

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

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

此外,在 VS2013 中应该有使用 IntelliTrace 的选项。请查看此博客的信息IntelliTrace using Visual Studio 2013 Preview

【讨论】:

  • 此部分不会出现在我们任何 VS2013 安装的选项列表中。我正在梳理构建工作流程,但似乎找不到任何设置 EnableIntelliTrace=true 的内容。我们的测试 .runsettings 文件根本没有提到 IntelliTrace。
  • 在选项中禁用 IntelliTrace 后,它适用于我的 VS2015。您可以尝试解决方法:将您的 VS2013 更新为 VS2015 并禁用 VS 中的选项。
【解决方案2】:

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

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

【讨论】:

  • 我们使用的是 .runsettings 文件而不是 .testsettings 文件,因为这是 VS2013 推荐的。看起来 IntelliTrace 无法在 .testsettings 之外进行配置,但 MSDN 添加了一个警告,即添加一个会减慢测试运行速度;由于我们正在尝试提高性能,因此我们必须尝试一下并找出答案。
【解决方案3】:

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

【讨论】:

  • 其实你可以尝试添加 .runsettings 文件,而无需对 IntelliTrace 进行任何配置。我想知道即使没有明确指定 IntelliTrace 是否仍在运行。
猜你喜欢
  • 1970-01-01
  • 2019-08-08
  • 2013-04-26
  • 2014-06-01
  • 1970-01-01
  • 2013-11-28
  • 2020-02-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多