2011-06-14 160 views
9

在TeamCity中,我需要说明包含要执行的NUnit测试的程序集的确切位置。TeamCity并运行NUnit测试

是否有一个选项来声明一个.SLN文件,以便它动态地查找这些测试项目?

回答

22

可以使用通配符表达式在运行测试从箱:

Source\\**\bin\\**\*Tests.dll 

以上将运行在任何bin文件夹中的任意组装测试在包含“测试”的源文件夹下的程序集名称末尾。

+8

谢谢,非常有帮助。我稍微修改了这个以包含构建配置:'%system.teamcity.build.workingDir%\\ ** \ bin \%env.BUILD_CONFIG%\\ ** \ * Tests.dll' – 2013-04-19 13:39:21

+0

dll的确切路径可以也给予。 – Serdar 2014-01-16 13:34:28

+0

%env.BUILD_CONFIG% - 对我无效 – 2014-08-04 11:44:11

2

根据您正在使用的MSBuild或南特,您可以将条目添加到您的构建脚本是这样的:

<ItemGroup> 
    <TestAssemblies Include="tests\\test*.dll"/> 
    <TestAssemblies Include="tests.lib\\test*.dll"/> 
</ItemGroup> 

<Target Name="runTests"> 
    <Exec Command="$(teamcity_dotnet_nunitlauncher) v2.0 x86 NUnit-2.5.0 %(TestAssemblies)" /> 
</Target> 

在上面的例子中,两个TestAssemblies线指向您的组件。

你可以阅读更多关于此这里:http://blogs.jetbrains.com/teamcity/2008/09/24/using-teamcity-nunit-launcher/

+0

谢谢,会考虑这个,如果我们切换到使用Msbuild构建!很有帮助。 – 2011-06-14 09:33:08