我让 TeamCity 工作的方式(必须添加 TeamCity 版本 6.5.4)是使用 psake 下载中提供的 TeamCity 模块。
将此添加到您的脚本中:
...
Import-Module "$build_dir\psake\teamcity.psm1"
#Tasks here
...
Remove-Module teamcity
#End Of File
我有一个构建文件夹,我已将模块放入其中,以便我的所有构建都可以访问它。
然后它开箱即用。
不过,我没有使用内置的 NUnit 运行器,我还将 NUUnit 控制台放在我的构建文件夹中,然后使用每个 UnitTest 程序集调用它:
Task Test -depends Build {
$testAssemblies = (get-childitem $base_dir -r -i "*UnitTests.dll" -exclude "*.config" -Name | Select-string "bin")
foreach($test_asm_name in $testAssemblies) {
$full_test_assembly_name = "$base_dir\$test_asm_name"
Exec { invoke-expression "$nunitconsole_path $full_test_assembly_name" }
}
}