如何:收集 IntelliTrace 数据以帮助调试难题

使用 Microsoft 测试管理器 或Visual Studio中,可以为IntelliTrace配置诊断数据适配器以收集特定诊断跟踪信息。 测试可使用此适配器,测试可以收集开发人员以后使用通过代码跟踪查找bug的原因的应用程序的重要诊断事件。IntelliTrace 的诊断数据适配器既可用于手动测试,也可用于自动测试。

说明说明

IntelliTrace 只可用于使用托管代码编写的应用程序。如果您正在测试将浏览器用作客户端的 Web 应用程序,则不应该在测试设置中为客户端启用 IntelliTrace,因为没有可用于跟踪的托管代码。在此情况下,您可能需要设置环境并在您的 Web 服务器上远程收集 IntelliTrace 数据。有关环境的更多信息,请参见设置测试计算机以运行测试或收集数据

IntelliTrace 数据存储在扩展名为 .iTrace 的文件中。运行测试时如果某个测试步骤未通过,则可以创建一个 Bug。包含诊断信息的 IntelliTrace 文件会自动附加到此 Bug 中。

说明说明

IntelliTrace 的诊断数据适配器在成功通过测试时未创建 IntelliTrace 文件。它只对未通过的测试用例保存文件,或者只有当您提交 Bug 时,它才会保存文件。

IntelliTrace 文件中收集的数据可减少重现和诊断代码中的错误所需的时间,从而提高调试效率。此外,由于您可与能在其计算机上复制您的本地会话的其他人共享 IntelliTrace 文件,因此它减少了 Bug 将不可重现的可能性。

警告说明警告

如果在测试设置中启用 IntelliTrace,则收集代码覆盖率数据将不起作用。有关更多信息,请参见 使用测试设置的代码覆盖率已弃用

警告说明警告

IntelliTrace 的诊断数据适配器的工作方式是检测托管进程,这项操作必须在测试运行的测试加载后执行。如果要监视的进程已启动,则不会收集任何 IntelliTrace 文件,因为该进程已在运行。为了避免这种情况,请确保加载测试之前该进程已停止。然后在加载测试后或启动第一个测试后启动该进程。

下面的过程介绍如何配置您想要收集的 IntelliTrace 数据。这些步骤适用于 Microsoft 测试管理器 的配置编辑器并在Visual Studio中测试设置对话框。

说明说明

用于收集 IntelliTrace 数据的测试代理的用户帐户必须是管理员组的成员。有关更多信息,请参见安装和配置测试代理和测试控制器

将数据配置为通过 IntelliTrace 诊断数据适配器进行收集

在执行本过程中的步骤之前,必须从+中打开测试从 Microsoft 测试管理器 或Visual Studio安装并选择 *** 数据和诊断 *** 页。

将数据配置为通过 IntelliTrace 诊断数据适配器进行收集

  1. 选择用于收集 IntelliTrace 数据的角色。

  2. 选择**“IntelliTrace”**。

  3. 如果添加IntelliTrace web客户端角色的或ASP.NET Web应用程序,还必须选择 *** ASP.NET客户端代理的IntelliTrace和测试影响 ***

    此代理允许您为 IntelliTrace 和测试影响诊断数据适配器收集有关从客户端到 Web 服务器的 http 调用的信息。

    警告说明警告

    如果决定对正用于 Internet Information Server (IIS) 上的应用程序池(您打算在此处收集 Intellitrace 数据)的标识使用自定义帐户,则必须在 IIS 计算机上为正在使用的自定义帐户创建本地用户配置文件。您可以为自定义帐户创建本地配置文件,方法是本地登录到 IIS 计算机一次,或使用自定义帐户凭据运行以下命令行:

    runas /user:domain\name /profile cmd.exe

  4. 选择 *** IntelliTrace ****** 配置 *** 可以修改默认的IntelliTrace设置。

    此时将显示用于配置将要收集的数据的对话框。

    警告说明警告

    如果启用收集 IntelliTrace 数据,则收集代码覆盖率数据将不起作用。

  5. 选择 常规 选项。选择**“仅 IntelliTrace 事件”**以记录测试时对性能影响最小的重要诊断事件。

    - 或 -

    选择**“IntelliTrace 事件和调用信息”**以记录诊断事件以及用于显示调用信息的方法级别跟踪。在运行测试时,此跟踪级别可能对性能有影响。

  6. 从在Internet信息服务(iis)运行您的 ASP.NET 应用程序中收集数据,请选择 *** 从在Internet信息服务(iis)运行的ASP.NET应用程序中收集数据 ***。设置和配置在Web服务器角色的测试代理。请参见 安装和配置测试代理和测试控制器

  7. 选择 *** 模块 *** 选项。选择**“从以下模块以外的所有模块收集数据”并使用“添加”可添加到模块列表中,单击“移除”**可移除模块。通过使用此选项,您可以包含除指定的模块之外的系统上运行的所有模块。

    - 或 -

    选择**“仅从以下模块中收集数据”并使用“添加”以添加到模块列表中,使用“移除”**以移除模块。通过使用此选项,您可以确切地指定所需的模块。

    说明说明

    如果可能,请选择要监视的特定进程。建议这样做以便优化性能。

  8. 选择 *** 处理 *** 选项。选择**“从以下进程之外的所有进程收集数据”,然后使用“添加”以添加到进程列表中,使用“移除”**以移除进程。通过使用此选项,您可以包含在系统上运行的所有进程,但指定的进程除外。

    - 或 -

    选择**“仅从指定的进程收集数据”并使用“添加”以添加到进程列表中,使用“移除”**以移除进程。通过使用此选项,您可以确切地指定所需的进程。

  9. (可选)选择 *** IntelliTrace事件 *** 选项。选择或清除您想在收集诊断事件时包含或排除的每个 IntelliTrace 事件类别。

  10. (可选)展开每个 IntelliTrace 事件类别,然后选择或清除您想在 IntelliTrace 事件中包含或排除的每个特定事件。

    说明说明

    有关更多信息,请参见在 Visual Studio 中配置 IntelliTrace 数据收集以进行调试

  11. (可选)选择 *** 高级 *** 选项。接下来,将在 *** 最大数量记录的磁盘空间 *** 旁边的下箭头并选择您想要留给IntelliTrace文件使用的最大大小。

    说明说明

    如果增大记录的大小,则可能会在您将此记录与测试结果一起保存时出现超时问题。有关如何增加诊断数据适配器的超时值的更多信息,请参见如何:防止诊断数据适配器超时

  12. 如果使用 Microsoft 测试管理器,选择 *** 保存 ***。 如果使用Visual Studio中,选择 *** 好 ***。现在已为测试设置配置并保存了 IntelliTrace 设置。

    说明说明

    若要重置此诊断数据适配器的配置,请选择Visual Studio的 Microsoft 测试管理器的 *** 重置为默认配置 ****** 重置为默认 ***

指南

有关更多信息,请参见 测试使用Visual Studio进行附带的2012版–第6章:一个测试的工具箱

请参见

任务

使用 Microsoft 测试管理器为自动系统测试创建测试设置

概念

使用测试设置来设置计算机和收集诊断信息

使用 IntelliTrace 查看代码的历史记录来更快地调试代码

其他资源

在 Microsoft 测试管理器中指定测试设置

指定 Visual Studio 测试的测试设置

在难以重现的 Bug 中包含诊断跟踪数据