任何人都知道如何运行单元测试 dll 使用 mstest 从命令行构建,无需运行 VS
考虑到机器上安装了.net 4.0和VS2010
我自己没有这样做过,但我想使用 mstest 命令行 是前进的方向...如果您已经尝试过并遇到问题,请提供更多详细信息。
mstest /testcontainer:path\to\tests.dll
编辑:如评论中所述,您应该将正确的目录放在路径上后执行此操作,或者包含 mstest.exe 的完整路径。
您必须将 /testcontainer 选项与 /category 选项一起使用来选择要在哪些类别中运行哪些测试。例如,以下命令在解决方案文件夹中运行,并运行优先级 1 和 ShoppingCart 类别中的测试。:
MSTest /testcontainer: testproject2\bin\debug\testproject2.dll /category:"Priority1&ShoppingCart"
注意
由于测试程序集文件驻留在不同的文件夹中,因此需要相对路径,
如果您使用测试列表,最好将 /testmetadata 选项与 /testlist 选项一起使用。例如,以下命令在解决方案文件夹中运行。由于测试元数据文件也驻留在该文件夹中,因此不需要路径:
MSTest /testmetadata:Bank.vsmdi /testlist:balancetests
详细:
从命令行运行测试
1. 打开 Visual Studio 命令提示符。
为此,请单击“开始”,指向“所有程序”,指向“Microsoft Visual Studio 2010”,指向“Visual Studio 工具”,然后单击“Visual Studio 命令提示符 (2010)”。
默认情况下,Visual Studio 命令提示符会打开以下文件夹:
:\Program Files\Microsoft Visual Studio 10.0\VC
注意
要更改命令提示符窗口默认打开的文件夹,请单击“开始”,指向“Microsoft Visual Studio 2010”,指向“Visual Studio 工具”,右键单击“Visual Studio 命令提示符 (2010)”,然后单击“属性”。在 Visual Studio 命令提示符 (2010) 属性对话框中,您可以在启动位置框中更改默认文件夹的路径。
2. 将目录更改为解决方案文件夹,或者在步骤 3 中运行 MSTest.exe 程序时,指定元数据文件或测试容器的完整路径或相对路径。
要识别您的解决方案文件夹,请首先识别 Visual Studio 项目文件夹。为此,请单击 Visual Studio 中“工具”菜单上的“选项”,然后单击“项目和解决方案”。在 Visual Studio 项目位置下,您会看到如下所示的路径:
:\文档和设置\我的文档\Visual Studio\项目
您的解决方案文件夹通常是此 Projects 文件夹的子级,例如以下示例中的 Bank 文件夹:
:\文档和设置\我的文档\Visual Studio\项目\银行
3. 运行 MSTest.exe 程序。
运行 MSTest.exe 时,必须分别使用 /testmetadata 选项或 /testcontainer 选项指定测试元数据文件或测试容器。您仅使用 /testmetadata 选项一次,以指示一个测试元数据文件。您可以多次使用 /testcontainer 选项,以指示多个测试容器。
如有必要,请包含元数据文件或测试容器所在文件夹的路径。测试元数据文件驻留在解决方案文件夹中。
根据测试类型,测试容器是 XML 文件、从测试项目构建的程序集或驻留在测试项目文件夹中的其他文件。
Source: http://msdn.microsoft.com/en-us/library/ms182487(v=vs.100).aspx
mstest.exe /testcontainer:c:\projects\MyTests\Sampe.Tests.dll
mstest
的现代替代品是VSTest.Console.exe。该工具位于
<vs-install-dir>\Common7\IDE\CommonExtensions\Microsoft\TestWindow
。