如何:从命令行使用 MSTest 运行自动测试

使用可执行程序 MSTest.exe 可以从命令行运行测试。此程序可以运行所有可自动运行的测试(即所有的非手动测试)。

从命令行运行测试

  1. 打开一个 Visual Studio 命令提示。

    若要执行此操作,请选择开始,指向 所有程序,指向 Microsoft Visual Studio 2012年,指向 Visual Studio 工具,然后选择 开发人员命令提示符

    默认情况下,Visual Studio 命令提示在以下文件夹位置打开:

    <驱动器号>:\Program Files\Microsoft Visual Studio 11.0\VC

    说明说明

    若要更改默认情况下,命令提示窗口打开的文件夹,请选择开始,指向 Microsoft Visual Studio 2012年,指向 Visual Studio 工具,用鼠标右键单击 开发人员的命令提示符下,然后选择 属性。在开发人员命令提示符属性 对话框中,您可以更改路径的默认文件夹中为 在启动框。

  2. 将目录更改为解决方案文件夹,或者在步骤 3 中运行 MSTest.exe 程序时指定元数据文件或测试容器的完整路径或相对路径。

    若要标识解决方案文件夹,首先请标识 Visual Studio Projects 文件夹。若要执行此操作,请选择选项工具菜单中的Visual Studio,然后选择项目和解决方案。在**“Visual Studio 项目位置”**下,将看到如下路径:

    <drive letter>:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects

    解决方案文件夹通常是此 Projects 文件夹的子文件夹,如以下示例中的 Bank 文件夹:

    <drive letter>:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects\Bank

  3. 运行 MSTest.exe 程序。

    在运行 MSTest.exe 时,必须指定测试元数据文件或测试容器(分别使用 /testmetadata 选项或 /testcontainer 选项指定)。/testmetadata 选项仅可使用一次,以指示一个测试元数据文件。可以多次使用 /testcontainer 选项,指示多个测试容器。

    必要时,可包含其中驻留有元数据文件或测试容器的文件夹的路径。测试元数据文件驻留在解决方案文件夹中。

    根据测试类型的不同,测试容器可以是 XML 文件、从测试项目生成的程序集或驻留在测试项目文件夹中的其他文件。

示例

必须结合使用 /testcontainer 选项与 /category 选项来选择要运行哪些类别中的哪些测试。例如,下面的命令在解决方案文件夹中运行,并且运行 Priority 1 和 ShoppingCart 类别中都有的测试:

MSTest /testcontainer: testproject2\bin\debug\testproject2.dll /category:"Priority1&ShoppingCart"

说明说明

由于测试程序集文件驻留在其他文件夹中,因此需要相对路径。

如果要使用测试列表,最好结合使用 /testmetadata 选项与 /testlist 选项。例如,以下命令在解决方案文件夹中运行。由于测试元数据文件也驻留在该文件夹中,因此不需要任何路径:

MSTest /testmetadata:Bank.vsmdi /testlist:balancetests

警告说明警告

测试列表中不能完全支持Visual Studio 2012:

  • 您不能创建新测试列表。

  • 您不能运行测试列表测试从 Visual Studio 中。

  • 如果您从 Visual Studio 2010 年,升级,必须在解决方案中的测试列表,您可以继续在 Visual Studio 中进行编辑。

  • 您可以继续运行使用 mstest.exe 命令行中,从测试列表,如上面所述。

  • 如果您使用测试列表中生成定义,您可以继续使用它。

(可选)其他的 MSTest 命令行选项可用于各种用途,如指定要运行的各个测试、发布测试数据和自定义屏幕输出。有关这些选项的更多信息,请参见 MSTest.exe 命令行选项

请参见

任务

如何:获得命令行测试结果

演练:使用命令行测试实用工具

概念

MSTest.exe 命令行选项

用于发布测试结果的命令行选项