2013-02-24 2 views
3

먼저이 게시물에 대해 Teamcity 포럼에서이 주제에 대한 다양한 토론을 보았으며 여기서는 아직 아무 것도 작동하지 않는 것으로 보입니다.단위 테스트를 실행할 때 NUnit System.BadImageFormatException

저는 C# .Net 솔루션을 가지고 있으며 TeamCity, 빌드 단계 및 단위 테스트 단계에서 두 단계를 구성했습니다. NUnit과 테스트를 실행할 때 나는 인 TeamCity에 다음과 같은 오류가 발생합니다 :

[단계 2/2] 시작 :
C : \ 인 TeamCity \ buildAgent \ 플러그인 dotnetPlugin \ \ 빈 \ JetBrains.BuildServer.NUnitLauncher.exe
#TeamCityImplicit [2/2] 디렉토리 : C : \ TeamCity \ buildAgent \ work \ trunk [2/2 단계] 2013-02-23 18 : 00 : 11,827
[4972] WARN JetBrains.TeamCity.Utils. PE.PEReader - 구문 분석하지 못했습니다. 어셈블리 파일 : 실행 파일 (.exe) 또는 라이브러리 (.dll) 형식이 입니다. [2/2 단계] System.BadImageFormatException : 실행 파일 (.exe) 또는 라이브러리 (. dll)이 잘못되었습니다.
C에서
Mono.Cecil.PE.ImageReader.ReadImage()에서 [단계 2/2] \ BuildAgent 일 \ \ 4fb4fc7600eac5a9 \ SRC \의 Utils \ SRC \ PE \ ImageReader.cs : 라인 84 [공정 2 \ BuildAgent \ 작업 \ 4fb4fc7600eac5a9 \ SRC \의 Utils \ SRC \ PE \ PEReader.cs : 라인 22/2]
C에서
JetBrains.TeamCity.Utils.PE.PEReader.DescribeAssemblyRuntime (문자열 assemblyFile)에서 Step 2/2] TeamCity NUnit 테스트 러너 시작 [Step 2/2] NUnit-2.6.2 .NET Framework v2.0 x64에서 테스트 [Step 2/2]
## teamcity [buildStatus text = 'NUnit 오류 , {build.status.text} 'status ='ERROR '] 0128007316275523149604에서 NUnit 오류 테스트 실행 중 [2/2 단계] '... UnitTests.csproj'어셈블리로드 어셈블리가
에 대해 어셈블리 파일을 구문 분석하지 못했습니다 : 실행 파일 (.exe) 또는 라이브러리 (.dll)의 형식이 잘못되었습니다. NUnit 러너 런타임 v2.0.50727, x64
System.BadImageFormatException : 파일 또는 어셈블리
'... UnitTests.csproj'또는 해당 종속성 중 하나를로드 할 수 없습니다. 잘못된 형식의 프로그램을로드하려고했습니다. 파일 이름 :
'.... UnitTests.csproj'---> System.BadImageFormatException : 파일 또는 어셈블리 '.... UnitTests.csproj'또는 해당 종속성 중 하나를로드 할 수 없습니다 수 없습니다. 잘못된 형식의 프로그램을로드하려고했습니다. 파일 이름 : '.... UnitTests.csproj'

저는 TeamCity 7.1.4를 실행하고 있습니다. Visual Studio 2012를 사용하고 있으며 현재 구성이 64 비트입니다. 나는 nunit 2.62 런타임 버전 2.0을 사용하고 있습니다.

다음과 같이 내 인 TeamCity 설정을 구성한 :

은 MSBuild 단계 : .NET Frameworrk 4.5 실행 플랫폼 : 64

NUnit과 단계 : NUnit과 러너 : 2.6.2 .NET 런타임 : 플랫폼 x64 버전 : v2.0

유닛은 resharper로 실행할 때 모두 통과합니다.

일반적으로 BadImageFormatExceptions가 x86의 64 비트 프로젝트를 컴파일하는 것과 관련이 있고, 그 반대의 경우도 마찬가지입니다. 솔루션의 구성 관리자와 다양한 설정에 대해 64/x86 설정의 모든 조합을 시도했습니다. 팀 도시. 내 설정에 관계없이이 오류가 발생합니다. 누구든지 아이디어가 있습니까?

+4

'BadImageFormatException'은 .Net 어셈블리가 아닌 파일을로드하려고 시도하고 있다는 것을 의미 할 수도 있습니다. 이 오류 메시지는 어셈블리가 아닌'UnitTests.csproj'를로드하려고 시도하고 있음을 나타냅니다. – adrianbanks

답변

2

@adrianbanks에게 감사드립니다. 테스트를 실행하기 위해 .csproj 파일을 가리키고 있습니다. Adrian에 따르면 TeamCity가 단위 테스트 dll을 가리 키도록 구성되었으며 모든 것이 작동했습니다.

+0

도움이 된다니 기쁘다. – adrianbanks

관련 문제