그래서 저는 cc.net을 처음 접했지만 지금까지와 비슷합니다. 나는 SVN 최신, MSBuild 건물지고 있지만 내 단위 테스트를 실행, kablooey 오면 오면.CruiseControl.NET에서 NUnit 작업을 실행하면 항상 오류가 발생합니다.
GAC에서 참조를 수정하는 방법에 대해 제안 된 수정 프로그램을 시도했지만 수정 된 사항은 없습니다. 나는 심지어 NUnit을 제거/재설치했지만 여전히 운이 없다. 또한, 내 테스트는 처음 NUNit 2.46을 참조했지만 지금은 2.5.2를 설치 한 동일한 버전을 참조합니다. CruiseControl.NET 1.4.4.83을 실행하고 있습니다.
현재 WinXP Pro SP3, .NET 2.0 SP1 및 3.5 SP1이 설치된 내 dev 컴퓨터에서 cc.net을 실행 중입니다. VS.NET을 빌드에는 사용하지 않지만 FYI VS.NET 2005 및 2008 Professional Edition은 시스템에 설치됩니다.
nunit-console.exe는 명령 행에서 정상적으로 실행됩니다.
이<cruisecontrol xmlns:cb="urn:ccnet.config.builder">
<project>
<name>STAR Trunk</name>
<triggers>
<intervalTrigger name="continuous" seconds="450" buildCondition="ForceBuild" initialSeconds="120"/>
</triggers>
<sourcecontrol type="multi">
<sourceControls>
<svn>
<trunkUrl>svn://myServerPath1</trunkUrl>
<workingDirectory>c:\MyPath1</workingDirectory>
<username>username</username>
<password>password</password>
</svn>
<svn>
<trunkUrl>svn://myServerPath2</trunkUrl>
<workingDirectory>c:\MyPath2</workingDirectory>
<username>username</username>
<password>password</password>
</svn>
</sourceControls>
</sourcecontrol>
<tasks>
<msbuild>
<executable>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MSBuild.exe</executable>
<workingDirectory>c:\MyPath</workingDirectory>
<projectFile>c:\MyPath\solution.sln</projectFile>
<buildArgs>/noconsolelogger /p:Configuration=Debug /v:diag</buildArgs>
<targets>Clean;Rebuild</targets>
<timeout>1200</timeout>
</msbuild>
<nunit>
<path>C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe</path>
<assemblies>
<assembly>c:\MyTestsPath\bin\Assembly1.dll</assembly>
<assembly>c:\MyTestsPath\bin\Assembly2.dll</assembly>
<assembly>c:\MyTestsPath\bin\Assemblyn.dll</assembly>
<assembly>c:\MyTestsPath\bin\nunit.framework.dll</assembly>
</assemblies>
</nunit>
</tasks>
</project>
</cruisecontrol>
cc.net 서버 로그이 제공 :
가 여기 내 설정 파일의 mfeingold 아래 융합 로그에 대해 게시 한 후
2009-11-04 11:47:53,841 [STAR Trunk:DEBUG] Running unit tests: C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe /xml="C:\Program Files\CruiseControl.NET\server\STAR Trunk\Artifacts\nunit-results.xml" /nologo D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Acuity.Diagnostics.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Acuity.UnitTests.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\AjaxControlToolkit.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\AutoSproc.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Framework.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Interop.HDSECOMPRESSION.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\MetaBuilders.WebControls.ConfirmedButton.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\MetaBuilders.WebControls.ExpandingPanel.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\nunit.framework.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Star4.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\StarCore.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\StarReport.Lib.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\WebControls.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\webdev.webhost.dll
2009-11-04 11:47:53,888 [STAR Trunk:DEBUG] Starting process [C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] in working directory [C:\Program Files\CruiseControl.NET\server\STAR Trunk\WorkingDirectory] with arguments [/xml="C:\Program Files\CruiseControl.NET\server\STAR Trunk\Artifacts\nunit-results.xml" /nologo D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Acuity.Diagnostics.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Acuity.UnitTests.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\AjaxControlToolkit.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\AutoSproc.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Framework.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Interop.HDSECOMPRESSION.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\MetaBuilders.WebControls.ConfirmedButton.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\MetaBuilders.WebControls.ExpandingPanel.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\nunit.framework.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\Star4.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\StarCore.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\StarReport.Lib.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\WebControls.dll D:\dev\automatedTrunk\Star\Acuity.UnitTests\bin\webdev.webhost.dll]
2009-11-04 11:47:55,326 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] ProcessModel: Default DomainUsage: Multiple
2009-11-04 11:47:55,373 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] Execution Runtime: net-2.0.50727.3603
2009-11-04 11:47:55,498 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] Unhandled Exception:
2009-11-04 11:47:55,498 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] System.IO.FileLoadException: Could not load file or assembly 'file:///C:/Program Files/NUnit 2.5.2/bin/net-2.0/lib/nunit.core.DLL' or one of its dependencies. Incorrect function. (Exception from HRESULT: 0x80070001)
2009-11-04 11:47:55,498 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] File name: 'file:///C:/Program Files/NUnit 2.5.2/bin/net-2.0/lib/nunit.core.DLL'
2009-11-04 11:47:55,498 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
2009-11-04 11:47:55,498 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
2009-11-04 11:47:55,513 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
2009-11-04 11:47:55,513 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.Reflection.Assembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, StackCrawlMark& stackMark)
2009-11-04 11:47:55,513 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.Reflection.Assembly.LoadFrom(String assemblyFile, Evidence securityEvidence)
2009-11-04 11:47:55,513 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.Activator.CreateInstanceFrom(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo)
2009-11-04 11:47:55,513 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.AppDomain.CreateInstanceFrom(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
2009-11-04 11:47:55,513 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.AppDomain.InternalCreateInstanceFromWithNoSecurity(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
2009-11-04 11:47:55,529 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.AppDomain.InternalCreateInstanceFromWithNoSecurity(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
2009-11-04 11:47:55,529 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at System.Activator.CreateInstanceFrom(AppDomain domain, String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
2009-11-04 11:47:55,529 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at NUnit.Core.DomainInitializer.CreateInstance(AppDomain targetDomain)
2009-11-04 11:47:55,544 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at NUnit.Util.DomainManager.CreateDomain(TestPackage package)
2009-11-04 11:47:55,544 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at NUnit.Util.TestDomain.Load(TestPackage package)
2009-11-04 11:47:55,544 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at NUnit.Util.AggregatingTestRunner.Load(TestPackage package)
2009-11-04 11:47:55,544 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at NUnit.ConsoleRunner.ConsoleUi.Execute(ConsoleOptions options)
2009-11-04 11:47:55,544 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe] at NUnit.ConsoleRunner.Runner.Main(String[] args)
2009-11-04 11:47:55,544 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe]
2009-11-04 11:47:55,544 [4088:DEBUG] [STAR Trunk C:\Program Files\NUnit 2.5.2\bin\net-2.0\nunit-console.exe]
2009-11-04 11:47:55,544 [STAR Trunk:INFO] Task execution failed
2009-11-04 11:47:55,544 [STAR Trunk:INFO] Task output: ProcessModel: Default DomainUsage: Multiple
Execution Runtime: net-2.0.50727.3603
Unhandled Exception:
System.IO.FileLoadException: Could not load file or assembly 'file:///C:/Program Files/NUnit 2.5.2/bin/net-2.0/lib/nunit.core.DLL' or one of its dependencies. Incorrect function. (Exception from HRESULT: 0x80070001)
File name: 'file:///C:/Program Files/NUnit 2.5.2/bin/net-2.0/lib/nunit.core.DLL'
at System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
at System.Reflection.Assembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, StackCrawlMark& stackMark)
at System.Reflection.Assembly.LoadFrom(String assemblyFile, Evidence securityEvidence)
at System.Activator.CreateInstanceFrom(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo)
at System.AppDomain.CreateInstanceFrom(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
at System.AppDomain.InternalCreateInstanceFromWithNoSecurity(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
at System.AppDomain.InternalCreateInstanceFromWithNoSecurity(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
at System.Activator.CreateInstanceFrom(AppDomain domain, String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
at NUnit.Core.DomainInitializer.CreateInstance(AppDomain targetDomain)
at NUnit.Util.DomainManager.CreateDomain(TestPackage package)
at NUnit.Util.TestDomain.Load(TestPackage package)
at NUnit.Util.AggregatingTestRunner.Load(TestPackage package)
at NUnit.ConsoleRunner.ConsoleUi.Execute(ConsoleOptions options)
at NUnit.ConsoleRunner.Runner.Main(String[] args)
2009-11-04 11:47:55,544 [STAR Trunk:WARN] NUnit test output file C:\Program Files\CruiseControl.NET\server\STAR Trunk\Artifacts\nunit-results.xml was not created
2009-11-04 11:47:56,263 [STAR Trunk:DEBUG] Supplied output is not valid xml. Writing as CDATA
2009-11-04 11:47:56,263 [STAR Trunk:DEBUG] Output: ProcessModel: Default DomainUsage: Multiple
Execution Runtime: net-2.0.50727.3603
Unhandled Exception:
System.IO.FileLoadException: Could not load file or assembly 'file:///C:/Program Files/NUnit 2.5.2/bin/net-2.0/lib/nunit.core.DLL' or one of its dependencies. Incorrect function. (Exception from HRESULT: 0x80070001)
File name: 'file:///C:/Program Files/NUnit 2.5.2/bin/net-2.0/lib/nunit.core.DLL'
at System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection)
at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
at System.Reflection.Assembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, StackCrawlMark& stackMark)
at System.Reflection.Assembly.LoadFrom(String assemblyFile, Evidence securityEvidence)
at System.Activator.CreateInstanceFrom(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo)
at System.AppDomain.CreateInstanceFrom(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
at System.AppDomain.InternalCreateInstanceFromWithNoSecurity(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
at System.AppDomain.InternalCreateInstanceFromWithNoSecurity(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
at System.Activator.CreateInstanceFrom(AppDomain domain, String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes)
at NUnit.Core.DomainInitializer.CreateInstance(AppDomain targetDomain)
at NUnit.Util.DomainManager.CreateDomain(TestPackage package)
at NUnit.Util.TestDomain.Load(TestPackage package)
at NUnit.Util.AggregatingTestRunner.Load(TestPackage package)
at NUnit.ConsoleRunner.ConsoleUi.Execute(ConsoleOptions options)
at NUnit.ConsoleRunner.Runner.Main(String[] args)
2009-11-04 11:47:56,263 [STAR Trunk:DEBUG] Exception: System.Xml.XmlException: An error occurred while parsing EntityName. Line 6, position 146.
at System.Xml.XmlTextReaderImpl.Throw(Exception e)
at System.Xml.XmlTextReaderImpl.Throw(String res, Int32 lineNo, Int32 linePos)
at System.Xml.XmlTextReaderImpl.HandleEntityReference(Boolean isInAttributeValue, EntityExpandType expandType, Int32& charRefEndPos)
at System.Xml.XmlTextReaderImpl.ParseText(Int32& startPos, Int32& endPos, Int32& outOrChars)
at System.Xml.XmlTextReaderImpl.ReadValueChunk(Char[] buffer, Int32 index, Int32 count)
at System.Xml.XmlWriter.WriteNode(XmlReader reader, Boolean defattr)
at ThoughtWorks.CruiseControl.Core.Util.XmlFragmentWriter.WriteNode(XmlReader reader, Boolean defattr)
at ThoughtWorks.CruiseControl.Core.Util.XmlFragmentWriter.WriteNode(String xml)
2009-11-04 11:47:56,263 [STAR Trunk:INFO] Integration complete: Failure - 11/4/2009 11:47:55 AM
, 여기에 내가 가진 무엇 :
*** Assembly Binder Log Entry (11/7/2009 @ 10:26:46 PM) ***
The operation failed.
Bind result: hr = 0x80070001. Incorrect function.
Assembly manager loaded from: c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
Running under executable C:\Program Files\NUnit 2.4.6\bin\nunit-console.exe
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: User = NT AUTHORITY\SYSTEM
LOG: Where-ref bind. Location = C:/Program Files/NUnit 2.4.6/bin/nunit.core.DLL
LOG: Appbase = file:///D:/dev/automatedTrunk/Star/Acuity.UnitTests/bin
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = C:\WINDOWS\TEMP\nunit20\ShadowCopyCache\2272_633932296067629930
LOG: AppName = Tests
Calling assembly : (Unknown).
===
LOG: This bind starts in LoadFrom load context.
WRN: Native image will not be probed in LoadFrom context. Native image will only be probed in default load context, like with Assembly.Load().
LOG: Download of application configuration file was attempted from file:///D:/dev/automatedTrunk/Star/Acuity.UnitTests/bin/Acuity.Diagnostics.dll.config.
답변 해 주셔서 감사합니다. @mfeingold - 퓨전 로그가 도움이되었습니다. 임시 파일을 제거하면 실행되지 않는 nunit-console.exe 문제가 발생했습니다. 다른 문제는 내가 키보드 앞에서 말하기가 창피했습니다. 집에는 D : 드라이브가 있습니다. 직장에서 나는 ... cc.net 설정이 nunit 어셈블리 노드의 실제 경로를 보여주지는 않지만 D : 드라이브에 대한 참조가 있음에도 불구하고. 아야! – nickytonline