Kyl*_*yle 15 tfs mstest tfsbuild vs-unit-testing-framework visual-studio-2012
是否可以将通配符testcontainer值传递给命令行mstest.exe而不是手动硬编码多个testcontainer值?如
Mstest.exe/testcontainer:测试 .dll
我想在我们的tfs 2012升级template.xaml构建过程中手动调用mstest,因为它的行为类似于在默认模板中运行测试的自动发现方式.
如果没有,这可以写入bat脚本循环从给定的开始文件夹中的文件夹?
oɔɯ*_*ɯǝɹ 28
MSTest不为testcontainer采用通配符参数(在此处查看命令行选项的参考).但是它可以采用多个/ testcontainer参数,如下所示:
mstest.exe /testcontainer:a.test.dll /testcontainer:b.tests.dll
Run Code Online (Sandbox Code Playgroud)
您将不得不以另一种方式提供这些参数.这可以使用批处理文件来完成,但MSBuild可能是更好的选择:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="RunMSTest">
<ItemGroup>
<TestAssemblies Include="**\*Tests.dll"/>
</ItemGroup>
<Target Name="RunMSTest">
<Exec Condition=" '@(TestAssemblies)' != ''"
Command="Mstest.exe @(TestAssemblies ->'/testcontainer:"%(RecursiveDir)%(Filename)%(Extension)"', ' ')"
/>
</Target>
</Project>
Run Code Online (Sandbox Code Playgroud)
(感谢/sf/answers/193947771/进行转换)
将i保存到文件(testall.proj),然后运行它MSBuild testall.proj,或者创建一个批处理文件来为您运行它.
另请注意,mstest在一个应用程序域中加载所有提供的测试容器,因此它们需要支持相同的平台目标(任何cpu,x86,x64).
| 归档时间: |
|
| 查看次数: |
6905 次 |
| 最近记录: |