我用Google搜索并找到了以下有用的参考资料。目前我希望在以下情况下从命令行运行全部(为了便于执行和快速):
我不确定如何为上述需求编写正确的命令。
参考文献:
过了一会儿,我发现了以下有用的提示。
%ProgramFiles%\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe
的MSTest.exe运行Visual Studio单元测试。/testcontainer:Path\To\Your\TestProjectAssembly.dll
指示测试编码的位置。如果需要,您可以指定多个'/ testcontainer'选项。/test:TestFilter
过滤要运行的测试。请注意,此过滤器适用于完整的测试方法名称(即FullNamespace.Classname.MethodName)答案 0 :(得分:14)
目前我可以根据自己的需求找到答案:
特定测试(即通过标记为[TestMethod()]
的方法编写的测试)
使用MSTest.exe
/container:
TheAssemblyContainingYourSpecificTest /test:
TheSpecificTestName
课堂上的所有考试
使用MSTest.exe
/container:
TheAssemblyContainingYourClass /test:
TheClassNameWithFullNamespace
请注意,/test:
是过滤时使用类的全名的过滤器。
其他人仍未知。如果你知道怎么做,请讨论。
答案 1 :(得分:13)
对于数字 4。要在程序集中运行所有测试,只需:
mstest /testcontainer:YourCompiledTestAssembly.dll
答案 2 :(得分:4)
问题
5除标记为类别的所有测试外 [TestCategory( “一些类别”)]
使用
mstest.exe /testcontainer:yourTests.dll /category:"!some-category"
如果您需要排除多个类别,请使用
mstest.exe /testcontainer:yourTests.dll /category:"!group1&!group2"
答案 3 :(得分:3)
您可能会对Gallio捆绑感兴趣。它提供了一个免费的通用自动化平台来运行您的测试(MSTest,MbUnit,NUnit,xUnit等)与各种测试运行器(GUI,命令行,PoSh,第三方工具的插件等)。
特别是你可能想要使用 Gallio.Echo 这是一个很好的命令行测试运行器:
Gallio测试跑步者还filtering capabilities仅运行您的单元测试的子集(例如,每个类别,每个夹具等)