2013-11-15 1 views
0

저는 CC .NET에 처음 접했지만 이전에 다른 환경 (C# 아님)에서 다른 빌드 도구를 사용했습니다.Cruise Control .NET은 빌드/테스트 도구를 어떻게 사용합니까?

내 질문은 빌드 도구 (빌드 스크립트 용)로 NAnt를 선택했을 때 & NUnit을 테스트 도구로 테스트 도구로 사용하면 CC에서 config에서 지정한 매개 변수를 사용하여 명령 줄을 실행합니다. 파일? 난은 NAnt 내 빌드 스크립트 설치 한 예를 들어

은 .NET 프로젝트를 빌드하거나 "다른 방법"그것을 할 않습니다 위해은 NAnt 디렉토리에 NAnt.exe을 실행 CC 것인가?

감사합니다.

+0

당신이 MSBUILD를 통해 NANT를 사용하는 이유가 있나요? 2.0 이후 MsBuild.exe가 선호됩니다.Nant는 다른 옵션이 없을 때 1.1 용으로 훌륭했습니다. – granadaCoder

답변

2

CC.NET 메뉴 시스템에서 몇 가지 기존의 "XSL 플러그인"을 가지고있다.

이의 예를 들어 NUnit를 보자. 프로젝트의 빌드에 CC.NET 웹 페이지에서 NUnit과 결과를 클릭하면

글쎄, 당신은 (상자 밖으로) 아무것도 표시되지 않습니다.

왜? 빌드에 대한 모든 정보를 보유하고있는 "super-duper"XML 파일에 NUnit xml 데이터가 없기 때문에.

그럼 어떻게 될까요?

한 가지 방법은 NUNIT 명령 줄을 실행하는 것입니다, 그것은 출력 XML 파일을 생성합니다.

NUnit.2.5.3.exe (bunch of stuff) NUnitResults.xml 

그래서 위의 명령 줄 파일 NUnitResults.xml을 만듭니다

(위의 작동하지 않는 코드는 바로이 시점에서 개념, 제발 롤). 하지만 그렇게해도이 정보는 "수퍼 듀퍼"XML 파일에 없습니다.

CC.NET는 독립 XML 파일을, 그리고 슈퍼아요 xml 파일 "로 빨아"하는 "파일/병합"작업이 있습니다.

NUMIT 데이터가 super-duper-xml 파일에 저장되고 CC.NET 프로젝트/빌드 페이지에서 NUnit 링크를 클릭하면 NUnit xml이 생성됩니다. -data를 super-duper.xml 파일에 넣으면 xsl 변환은 실제로 뭔가를 수행하고 cc.net 프로젝트/빌드 페이지에서 일부 html 출력을 생성합니다. 이해

합니까? 여기

이있는 cc.net 작업 "일부는 혼자 XML을 서서 슈퍼 duper.xml 파일로 빨아 받아"

여기

http://confluence.public.thoughtworks.org/display/CCNET/File+Merge+Task

가 NUNIT의 CC.NET 작업이다. 이제는 CC.NET 작업을 사용할 필요가 없습니다. 또한 빌드 스크립트에서 EXEC 작업을 연결하고 그 작업이 NUnit.xml 데이터를 생성 할 수도 있습니다. 일명, 고양이를 피부에 몇 가지 방법이 있습니다. 그러나 나는 다른 방법이있을 때 일반적으로 독점적 인 cc.net 작업에서 벗어납니다. 왜? 왜냐하면 내가 cc.net (예를 들어 tfs)으로 옮기면 내 전환이 덜 고통 스러울 것이기 때문입니다.

http://confluence.public.thoughtworks.org/display/CCNET/Using+CruiseControl.NET+with+NUnit

+0

매우 유용한 답변, 감사합니다. – mitchellt

+1

내 우선 순위는 MsBuild.exe를 사용하여 코드를 작성하는 것입니다. 또한 CC.NET을 "최고 duper, super cool MsBuild.exe 호출자"라고 생각하려고합니다 ......... 내 논리의 99 %를 msbuild (.proj) 파일에 씁니다. CC.NET은 기본적으로 소스 제어에서 코드를 가져옵니다. "msbuild.exe mysolution.proj"를 호출 한 다음 File-Merging을 수행하고 일부 전자 메일을 보냅니다. cc.net을 "가벼운"IMHO로 유지하십시오. 행운을 빕니다. – granadaCoder

+1

PS ... 와일드 카드로 파일 - 병합을 수행 할 수도 있습니다. 나는 "* Results.xml"을 사용하고, .xml 파일을 출력하는 "도구"는 "Results.xml"을 접미사로 사용하고 와일드 카드는 "모두를 빨아 들인다." – granadaCoder

관련 문제