Unit testing 使用MSBuild从.proj文件运行单元测试
我想使用MSBuild运行单元测试。以下是我今天调用msbuild的方式:Unit testing 使用MSBuild从.proj文件运行单元测试,unit-testing,msbuild,Unit Testing,Msbuild,我想使用MSBuild运行单元测试。以下是我今天调用msbuild的方式: msbuild MySolution.sln 相反,我希望使用名为“MyBuild.proj”的MSBuild项目文件,如下所示: <?xml version="1.0" encoding="utf-8"?> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5" DefaultTar
msbuild MySolution.sln
相反,我希望使用名为“MyBuild.proj”的MSBuild项目文件,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5" DefaultTargets="Build">
<Target Name="Build">
<ItemGroup>
<SolutionToBuild Include="MySolution.sln" />
<TestContainer Include="..\Output\bin\Debug\*unittests.dll"/>
</ItemGroup>
</Target>
</Project>
然后调用以下命令行:
msbuild MyBuild.proj
出于某种原因,当我这样做时,命令立即成功,构建甚至没有发生。我担心我一定是错过了一些非常明显的东西,因为我是MSBuild的新手
我想我真的有两个问题:
谢谢 您没有提供任何任务来实际执行任何操作, 在生成目标内部,您需要调用msbuild任务,示例如下:
<Target Name="Build">
<ItemGroup>
<SolutionToBuild Include="MySolution.sln" />
<TestContainer Include="..\Output\bin\Debug\*unittests.dll"/>
</ItemGroup>
<MSBuild Projects="@(SolutionToBuild)"/>
</Target>
这指定您实际希望msbuild生成的项目。
请参阅:了解更多详细信息及其所需参数
这是第一部分
至于第二部分?您使用的是什么测试框架?如果使用mstest id,请尝试在msbuild exec语句中包装命令行mstest.exe,以使其运行并执行测试。请参见此处的示例:c3aa