TeamCity,从命令行调用TeamCity NUnit启动程序

时间:2009-10-07 08:42:55

标签: nunit teamcity

我正在尝试使用TeamCity在多个构建代理之间拆分一些相当冗长的单元测试执行,因此我在TeamCity中删除了构建步骤的单元测试部分(使用Visual Studio 2008,sln2008构建运行程序)并尝试设置单独的构建步骤。

但是,我无法调用TeamCity附带的内置NUnit启动器。

在代理的系统属性页面中,我有:

teamcity.dotnet.nunitlauncher
C:\TeamCity\buildAgent\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe

我已经验证了文件实际存在。

问题是,在定义构建步骤时如何指定使用此系统属性?我已经设置了一个新的构建步骤,对产生二进制文件的步骤有适当的依赖关系,我已经通过使用普通的NUnit控制台验证了这一点,但是这并没有正确地向TeamCity报告有多少测试被执行了,所以我想我会用内置的NUnit启动器替换它。

我尝试使用以下命令设置命令行步骤可执行变体,没有工作,它们都给我一个错误,基本上说明找不到该文件:

${teamcity.dotnet.nunitlauncher}
$(teamcity.dotnet.nunitlauncher)
%sys.teamcity.dotnet.nunitlauncher%
%env.teamcity.dotnet.nunitlauncher%
%env.teamcity_dotnet_nunitlauncher%

任何想法我做错了什么?

3 个答案:

答案 0 :(得分:4)

请参阅描述类似配置的article$(teamcity_dotnet_nunitlauncher)应该有用。

如果您希望它与命令行构建一起使用,则应在构建配置中定义自定义环境变量,例如teamcity.dotnet.nunitlauncher,其值为%system.teamcity.dotnet.nunitlauncher%。从批处理文件中,此变量可以引用为%teamcity.dotnet.nunitlauncher%。有关详细信息,请参阅related forum post

答案 1 :(得分:2)

要从命令行运行它,请使用以下命令

D:\ AGT10 \ plugins \ dotnetPlugin \ bin> JetBrains.BuildServer.NUnitLauncher.exe v4.0 x86 NUnit-2.6.3 D:\ AGT10 \ work \ 7c6f18d4f70b315c \ tests \ Tests.AAT.xxx.dll

答案 2 :(得分:0)

您可以使用:

%system.teamcity.dotnet.nunitlauncher% /options your.dll

从命令行步骤