首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TeamCity的.NET NUnitaddin可以处理csproj文件吗?

TeamCity的.NET NUnitaddin可以处理csproj文件吗?
EN

Stack Overflow用户
提问于 2009-11-05 19:41:34
回答 2查看 761关注 0票数 0

开门见山,TeamCity .NET NUnitLauncher可以处理微软的csproj文件吗?

我问这个问题是因为以下几点。

我有一个NANT构建脚本。在这个脚本中,我有许多使用nunit-console.exe ( NUnit v2.5.2附带的)的测试。

我的Nant构建文件中的测试示例如下:

代码语言:javascript
复制
<target name="x.Commons.Tests" depends="xCore">
<exec program="${nunit-console.exe}" commandline="${nunit-console.args} Core\x.Commons.Tests\x.Commons.Tests.csproj" failonerror="${nunit-console.failonerror}"/>
 </target>

FailOnError设置为false,nunit-console.args设置为'/nologo‘。

当我在本地机器上运行这些测试时,我得到了测试输出。但是,当我指示TeamCity构建我的NAnt构建文件,并指示它处理测试目标时,我没有得到TeamCity的测试输出。我可以在日志中看到nunit-colsole.exe正在生成测试结果输出,但在TeamCity仪表板中看不到这一点。

在仔细阅读之后,我发现一些文章指出需要额外的步骤才能将此输入导入到TeamCity中。因此,我将我的测试修改为:

代码语言:javascript
复制
    <target name="x.Configuration.Tests" depends="xCore">
  <mkdir dir="C:\Tools\NUnit\bin\net-2.0\addins"/>
  <copy file="${teamcity.dotnet.nunitaddin}-2.5.0.dll" todir="C:\Tools\NUnit\bin\net-2.0\addins"/>
  <copy file="${teamcity.dotnet.nunitaddin}-2.5.0.pdb" todir="C:\Tools\NUnit\bin\net-2.0\addins"/>
  <exec program="${nunit-console.exe}" commandline="${nunit-console.args} Core\x.Configuration.Tests\x.Configuration.Tests.csproj" failonerror="${nunit-console.failonerror}"/>
 </target>

请注意,我还确保标记包含一个“addins”条目。

但是,和前面一样,我可以看到测试正在工作,因为nunit-console.exe在日志中显示了它的结果,但是我没有得到TeamCity的输出。

如果您能回答我的问题,或者提供任何帮助,我将不胜感激!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-11-06 20:05:13

使用

代码语言:javascript
复制
<copy file="${teamcity.dotnet.nunitaddin}-2.5.2.dll" todir="C:\Tools\NUnit\bin\net-2.0\addins"/>
<copy file="${teamcity.dotnet.nunitaddin}-2.5.2.pdb" todir="C:\Tools\NUnit\bin\net-2.0\addins"/>

NUnit版本的TeamCity外接程序应与NUnit版本匹配。请检查您的TeamCity版本是否支持NUnit 2.5.2或下载更新版本。

票数 1
EN

Stack Overflow用户

发布于 2009-11-05 20:06:25

我们这样做的方式是利用TeamCity自动拾取.csproj文件中的NUnit测试的能力。

首先,您需要通过以下方式安装MSBuild Community Tasks.

  • Then,
  • 设置.csproj文件:

代码语言:javascript
复制
- Have this in right after <Project>

  • 然后,在TeamCity中的项目设置的“运行器”部分中,选择MSBuild作为运行器,并在“ targets ”字段中指定build和nunit作为目标

目标:build nunit

TeamCity应该会在下一次构建时自动获取单元测试。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1680025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档