NAnt
NAnt 构建运行程序允许使用 NAnt 构建文件。
TeamCity 从 0.85 版本开始支持 NAnt。
note
TeamCity NAnt 运行器需要在构建代理上安装 .NET Framework 或 Mono。
TeamCity 的 NAnt 运行器包含一个叫做 msbuild
的任务,该任务允许 NAnt 启动 MSBuild 脚本。 TeamCity msbuild
的 NAnt 任务具有与 NAntContrib 包 msbuild
任务相同的属性集。 由 NAnt 启动的 MSBuild 构建过程将表现得就像它们是由 TeamCity MSBuild/SLN2005 构建运行程序启动的一样(也就是说,将向构建脚本添加 NUnit
和/或 NUnitTeamCity
MSBuild 任务,日志和错误报告将直接发送到构建服务器)。
note
msbuild
任务用于 NAnt,可在 MSBuild 脚本内部使用所有构建配置系统属性。 请注意,所有属性名称的.
将被_
替换。
如果要禁用此功能,将任务的false
属性设为set-teamcity-properties
。
默认情况下,NAnt msbuild
任务会检查 NAnt target-framework 属性的当前值来选择 MSBuild 运行时版本。
可以通过设置 teamcity_dotnet_tools_version
项目属性为所需的 .NET Framework 版本(例如 "4.0")来覆盖此参数。
...
<!-- this property enables MSBuild 4.0 -->
<property name="teamcity_dotnet_tools_version" value="4.0"/>
<msbuild project="SimpleEcho.v40.proj">
...
</msbuild>
...
note
要将属性传递给 MSBuild, 请使用
属性
标签,而不是在命令行中明确定义属性。
要测试所有的程序集而不在第一个测试失败时停止,请使用:
<target name="build">
<nunit2 verbose="true" haltonfailure="false" failonerror="true" failonfailureatend="true">
<formatter type="Plain" />
<test haltonfailure="false">
<assemblies>
<include name="dll1.dll" />
<include name="dll2.dll" />
</assemblies>
</test>
</nunit2>
</target>
note
failonfailureatend
属性在 NAnt 的原始NUnit2
任务中未定义。 请注意,如果nunit2
元素或test
元素的haltonfailure
属性被设置为true
,则此属性将被忽略。
在下方,您可以找到有关 NAnt Build Runner 字段的参考信息。
选项 | 描述 |
---|---|
构建文件的路径 | 指定与 Build Checkout Directory 相关的路径。 |
构建文件内容 | 如果您希望使用与构建文件设置中列出的不同的构建脚本,请选择此选项。 当此选项被启用时,您需要在文本区域内键入构建脚本。 |
目标 | 指定由构建脚本定义的构建目标的名称,用空格隔开。 可用的目标可以通过点击字段旁边的图标在 Web UI 中查看,并通过勾选适当的框来添加。 |
工作目录 | 指定到 Build Working Directory 的路径。 默认情况下,构建工作目录设置为与 构建检出目录 相同的路径。 |
NAnt 主页 | 输入到
|
目标框架 | 将
|
命令行形参 | 为
|
缩短测试失败反馈时间 | 使用以下选项指导 TeamCity 先运行某些测试。 |
首先运行最近失败的测试 | 如果选中,首先,TeamCity 会运行在以前完成或正在运行的构建中失败的测试,以及失败率较高的测试(即所谓的 闪烁 测试)。 |
要了解如何配置代码覆盖率选项,请参考 配置 .NET 代码覆盖率 页面。
感谢您的反馈!