如何:使用具有多个 CPU 或内核的计算机更快地运行单元测试

如果您的计算机具有多个 CPU 或具有一个带多个内核的 CPU,则可以通过利用计算机的容量来并行运行单元测试以加快测试执行速度。

只有在以下条件为真时,才能使用此并行执行功能:

  • 在使用 Microsoft Visual Studio 2010 的计算机上运行测试。 可以使用测试控制器以本地或远程方式运行测试。

  • 只运行单元测试。 (测试不能是单元测试类型的扩展,例如编码的 UI 测试。)

  • 单元测试是线程安全的,以防止在并行运行测试时出现问题。

  • 不能用测试设置收集任何数据和诊断信息,因为这将减慢测试执行速度,并且数据将基于在同一时间运行的多个测试。

  • 不得作为承载的测试运行单元测试。 例如,不能使用 ASP.NET 主机适配器。

    提示

    若要在使用此功能时提高性能,则必须在具有多个 CPU 或多个内核的计算机上并行运行测试。 但是,可以在仅具有一个 CPU 或一个内核的计算机上使用此功能来验证测试是否可并行运行。

使用以下过程可修改测试设置以在计算机上并行运行单元测试。

使用多个 CPU 或多个内核并行运行单元测试

  1. 若要打开包含要并行运行的单元测试的解决方案,请单击**“文件”,指向“打开”,然后单击“项目/解决方案”**。

    将显示**“打开项目”**对话框。

  2. 选择解决方案,然后单击**“打开”**。

  3. 若要修改测试设置文件,请打开**“解决方案项”,右击测试设置文件,指向“打开方式”**。 选择一个编辑器。

    文件会在该编辑器中显示。

  4. 若要设置要并行运行的单元测试,请将 parallelTestCount 特性添加到 Execution 元素,如以下示例所示:

    <Execution parallelTestCount="0">
    

    下表对此特性的值进行了定义:

    ParallelTestCount 的值

    说明

    未指定

    (默认值)使用 1 个 CPU/内核

    0

    根据 CPU 和内核计数并行运行单元测试

    n

    同时并行运行 n 个测试,其中 n 表示给定数。 (如果在并行运行测试时不想使用所有 CPU 或内核,则使用此设置。)

  5. 保存测试设置文件,并在计算机上从 Microsoft Visual Studio 2010 中本地运行测试。

    当测试运行时,将会在“测试结果”窗口中显示。 您应会看到多个测试在同时运行。

请参见

概念

如何:创建和运行单元测试