2010-04-01 4 views
1

Visual Studio 팀 스위트 2008이 있습니다. TFS를 설정하기위한 요구 사항을 충족시킬 수 없으므로 TortoiseSvn 및 VisualSvn을 VSTS의 버전으로 사용하고 있습니다.자동화 된 테스트, 빌드 및 배포

나는 다음을 수행 시스템 설치가 필요합니다

내가 만들고 작업 항목을 추적 할 수 neeed. VSTS에서 작업 한 현재 프로젝트가 업데이트되면 업데이트가 버전 제어로 커밋됩니다. 업데이트가 응용 프로그램을 손상시키지 않는지 확인하기 위해 테스트가 실행됩니다. 업데이트에 문제가있는 경우 개발자에게 다시보고됩니다. Clickonce 응용 프로그램에 문제가없는 응용 프로그램은 자동으로 빌드되고 난독 화되어 FTP 서버에 배포됩니다.

저는 버전 제어, 서버 구축, 자동화 된 테스트 및 지속적인 통합 작업을 해본 적이 없었습니다. 이러한 유형의 시스템을 위해 필요한 것을 알아야합니다. 내가 사용해야하는 조합/스택 모르는

: CruiseControl.net를, 인 TeamCity, 허드슨은 NAnt, NUnit과, MSTEST, Trac에, BugTracker.net, Ndepend, VisualSvn 서버, 억지로, Msdeploy, MSBuild를, SCM .

저는 무료/오픈 소스이며 설치 및 사용이 비교적 쉬운 것을 원합니다.

내 요구에 맞는 설정을 제안하십시오.

이 어떤 도움이

답변

1

작업 항목은 VSTS의 일부 평가, 다른 소스 제어 시스템에서 작업 항목 Microsft TFS에 대한 개념에는 존재하지 않는다.

SVN-1.4.6-setup.exe를

D에 서브 버전을 설치합니다 :

전체 지속적인 통합 CI 시스템을 설정하는 가장 쉬운 방법은 될 것 \ SVN

만들기 소스 제어 저장소 :

D : \ SVN \ 빈> svnadmin는 D를 만들 : \

는 SVN에 소스를 추가 SVN \ 레 포스 :

D : \ SVN \ 빈> SVN 가져 오기 D : \ 웹 루트 파일 :에 \ 웹 루트와 모든 하위 디렉토리 : /// D :이 D를 가져옵니다

/SVN /의 repos/웹 루트 -m "초기 수입"

D : \ SVN \의 repos \ conf의 \ svnserve.conf http://martin-lindhes.blogspot.com/2006/09/how-to-run-subversion-140-in-windows.html

모든 액세스 개방 svn의 설정 파일을 허용 : 서비스로 SVN을 설정하는 방법에 대한 자세한 datils의 하위 디렉토리 "웹 루트"의 저장소,

주석 처리 (삭제/#) :

auth-access = write

모든 사용자가 액세스 할 수있는 권한으로 소스 제어 서버를 실행해야합니다.당신이 구글 코드이 방법을 변화시키고 사람을 추적 더 comlex 시나리오 수 없습니다 :

  1. 여기에서 소스 제어 클라이언트를 설치하십시오 : 파괴의 역할 액세스 3 단계에서 소스 코드를 얻는 방법

    : tortoisesvn.net/downloads

  2. 당신은 코드 예 : C, 체크 아웃해야 할 위치 그리고 빈 디렉토리를 만들 : \ 코드 \ 소스

  3. 마우스 오른쪽 단추로 클릭 C : \ 코드 \ 신

SVN : //yourserver.com : 48000/웹 루트

을하고 다른 모든 기본 옵션입니다 선택 CE 디렉토리 및 저장소 URL을 제공, "SVN 체크 아웃"을 선택했다.

확인을 클릭하면 최신 코드가 적용됩니다.

다운로드 및 설치를 CruiseControl : sourceforge.net/projects/ccnet/

열기 CC 설정 파일 :

C : \ 프로그램 파일 \ CruiseControl.NET는 서버 \을 ccnet.config 여기 \ 일부 샘플은 설정 :

<cruisecontrol> 
    <project name="eSeismic CI build and Test System"> 
    <sourcecontrol type="svn"> 
    <trunkUrl>svn://yourserver.com:48000/webroot</trunkUrl> 
    <workingDirectory>c:\dev\ccnet</workingDirectory> 
    </sourcecontrol> 

    <triggers> 

     <intervalTrigger seconds="3600" /> 

    </triggers> 

    <tasks> 
     <devenv> 
     <solutionfile>C:\Code\source\SomeSolutionNameHere.sln</solutionfile> 
     <configuration>Debug</configuration> 
     <buildtype>Build</buildtype> 
     <executable>C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com</executable> 
     <buildTimeoutSeconds>60</buildTimeoutSeconds> 
     </devenv> 


     <nunit path="C:\nunit\bin\nunit-console.exe"> 
     <assemblies> 
      <assembly>C:\someproject...\bin\Debug\someunittestdll....Test.dll</assembly> 
     </assemblies> 
     </nunit> 
    </tasks> 


    <publishers> 
     <statistics /> 
     <xmllogger /> 
    </publishers> 

    </project> 

</cruisecontrol> 

모든 문제는 도움말을 참조하십시오 : ccnet.sourceforge.net/CCNET/

난 당신이 시험에 NUNIT를 사용하는 가정합니다.

Simples.

-1

저는 Valko가 Mike로부터 응답을 받아야한다고 생각합니다. 비슷한 단계를 거쳤으며 SVC 저장소뿐만 아니라 ClearCase도 사용했습니다. Cruise Control이 답입니다. 발코에게 이걸주세요