gpt4 book ai didi

msbuild - CruiseControl.Net 和 NUnit - 测试完成,但任务没有?

转载 作者:行者123 更新时间:2023-12-01 11:57:27 25 4
gpt4 key购买 nike

我有一个使用 Nant 清理以前日志的 CruiseControl.Net 设置,然后它启动了一个 VS 项目的 msbuild,最后运行 nunit-console 来执行测试。

它似乎构建了几秒钟(很好),然后跳到运行 600 次测试,这大约需要一分钟。然而,即使日志文件在那里,它也会在那里“无所事事” 10 分钟,此时构建超时并且进程退出。 CruiseControl.NET 网页然后显示结果为失败,但有一个异常(exception):

ThoughtWorks.CruiseControl.Core.Tasks.BuilderException: Command Line Build timed out (after 600 seconds)
at ThoughtWorks.CruiseControl.Core.Tasks.ExecutableTask.Execute(IIntegrationResult result)
at ThoughtWorks.CruiseControl.Core.Tasks.TaskBase.Run(IIntegrationResult result)
at ThoughtWorks.CruiseControl.Core.Project.RunTask(ITask task, IIntegrationResult result, Boolean isPublisher)
at ThoughtWorks.CruiseControl.Core.Project.RunTasks(IIntegrationResult result, IList tasksToRun, Dictionary`2 parameterValues)
at ThoughtWorks.CruiseControl.Core.Project.Run(IIntegrationResult result)
at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Build(IIntegrationResult result)
at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Integrate(IntegrationRequest request) BaseDirectory: , Executable: C:\Program Files\NUnit 2.5.8\bin\net-2.0\nunit-console.exe

ccnet.config 脚本如下。我已经尝试将超时更改为 3 分钟,以防万一与它有关,但即使这确实有效(它没有),它也是一个狡猾的黑客,因为当测试完成运行时,他们应该优雅地退出!

我已经在命令行运行了该命令,并确认运行它只需要大约一分钟。有什么理论吗?

<cruisecontrol xmlns:cb="urn:ccnet.config.builder">

<project name="CodeTests">
<workingDirectory>C:\Source\Wholesale\Comp.EventControl.TestingFramework\</workingDirectory>
<artifactDirectory>C:\Source\Wholesale\Comp.EventControl.TestingFramework\</artifactDirectory>

<prebuild>
<!-- clean nunit output to avoid CCNET reporting
about previous build tests if current build fails -->
<nant>
<executable>C:\Nant\bin\nant.exe
</executable>
<baseDirectory>C:\Source\Wholesale\Comp.EventControl.TestingFramework</baseDirectory>
<nologo>false</nologo>
<buildFile>nant.build</buildFile>
<targetList>
<target>cleanNunit</target>
</targetList>
</nant>
</prebuild>

<tasks>
<msbuild>
<executable>C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
</executable>
<workingDirectory>C:\Source\Wholesale\Comp.EventControl.TestingFramework\CodeReboot
</workingDirectory>
<projectFile>CodeReboot.sln</projectFile >
<buildArgs>/noconsolelogger
/v:quiet
/noconlog
/p:Configuration=Debug
/p:ReferencePath="C:\Program Files\NUnit 2.5.8\bin;C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0"
/p:AdditionalReferencePath="C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0"
</buildArgs>
<targets>ReBuild</targets >
<timeout>180</timeout >
<logger>c:\Program Files\CruiseControl.NET\server\Rodemeyer.MsBuildToCCNet.dll</logger>

</msbuild>
<exec>
<executable>C:\Program Files\NUnit 2.5.8\bin\net-2.0\nunit-console.exe
</executable >
<buildArgs>/xml:C:\Source\Wholesale\Comp.EventControl.TestingFramework\nunit-results.xml
/nologo C:\Source\Wholesale\Comp.EventControl.TestingFramework\CodeReboot\CodeReboot\bin\Debug\CodeReboot.dll
</buildArgs>
</exec>
</tasks>
<publishers>
<merge>
<files>
<file>C:\Source\Wholesale\Comp.EventControl.TestingFramework\nunit-results.xml
</file>
</files>
</merge>
<xmllogger />
<statistics />
<artifactcleanup cleanUpMethod="KeepLastXBuilds"
cleanUpValue="20" />
</publishers>

</project>
</cruisecontrol>

最佳答案

您使用的是什么版本的 nunit? 2.5.7/2.5.8 版本中存在一些问题导致 nunit-agent 在测试结束时挂起。我遇到了这个问题并恢复到旧版本的 nunit,挂起问题消失了。在 2.5.9 的发行说明中,他们显示“602761 nunit-agent 在测试完成后挂起”已得到修复。我还没有升级到 2.5.9,但这可能会解决您的问题。

关于msbuild - CruiseControl.Net 和 NUnit - 测试完成,但任务没有?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4617947/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com