NAnt 설치

홈페이지 : http://nant.sourceforge.net/

설치 :
1. 위의 사이트에서 nant-bin.zip 파일을 다운로드한다.
2. 만약 이전에 실치한 NAnt가 있다면 해당 파일을 삭제하도록 한다.
3. 위에서 다운로드 받은 파일을 “C:\Program Files\NAnt\” 폴더에 압축을 푼다.
4. nant.bat 파일을 PATH가 잡혀있는 경로에 생성한다.(C:\Windows\)
5. nant.bat:

@echo off
"C:\Program Files\NAnt\bin\NAnt.exe" %*

 

Doxygen을 활용한 주석 작성 스타일 가이드라인(규칙)

출처 : http://a.tk.co.kr/130

1. 개요

프로그램 소스 코드의 주석은 크게는 다른 사람이, 작게는 코드 작성자 자신이 소스 이해하는데 도움을 주고 오작동을 방지하며 수정을 쉽게 해주는 매우 중요한 역할을 합니다. 따라서 코딩 스타일과 마찬가지로 주석 역시 공통의 규격이 없다면 다른 사람의 주석을 읽는데 많은 수고가 필요하므로 규격화된 주석 작성방법이 필요합니다.

위와 같은 이유로 C++ 주석 스타일 가이드라인이 필요하며 적어도 팀 내에서는 동일한 주석 스타일을 사용할 필요성이 있습니다.

주석을 코드 라인단위로 너무 많이 작성하는 것은 오히려 코드를 보기 어렵게 하는 안 좋은 방법이지만 자신의 코딩스타일과 실력만을 믿고 주석을 전혀 쓰지 않는 행위는 더더욱 안 좋은 방법입니다. 많은 경험을 통하여 적절한 위치와 꼭 …

CppUnit 과 CruiseControl.NET 과의 결합

int _tmain(int argc, _TCHAR* argv[])
{
  CPPUNIT_NS::TestResult controller ;

  CPPUNIT_NS::TestResultCollector result ;
  controller.addListener (&result);

  CPPUNIT_NS::TestRunner runner ;
  runner.addTest(
CPPUNIT_NS::TestFactoryRegistry::getRegistry().makeTest());

  runner.run(controller);

  std::ofstream file("Results.xml");
  CPPUNIT_NS::XmlOutputter xml(&result , file);
  xml.setStyleSheet("report.xsl");
  xml.write();
  file.close();

  return result.wasSuccessful() ? 0: 1;

}

 

기존 소스와 다른점은 아래쪽에 추가된 부분이라고 할 수 있겠습니다.
Results.xml 을 지정해서 그 파일을 XmlOutPutter 의 결과로 지정해주는 부분입니다.
이렇게 되면 테스트의 상세 결과가 Results.xml 로 저장이 됩니다. stylesheet 를 지정해주는 부분은 옵션입니다. 만약 스타일 쉬트를 지정하게 되면 output 폴더에 꼭 reports.xsl 을 가지고 다녀야 합니다.

자 이제 Test 프로젝트를 준비가 됐으니 다음은 ccnet.config 를 손볼
차례입니다. 이 파일은 보통 %CRUISECONTROL.NET%\server 에 있습니다.
기존의 …

CruiseControl.NET 에서 exec 블록 추가

기존의 CruiseControl.NET 에서 TestProject 를 실행해야 하는 경우가 있습니다. 그때는 <task> 블록에서 <exec> 블록을 이용해서 TestProject 의 결과물을 호출합니다.

ccnet.config 에서 <task> 블록에서 <exec> 블록을 추가해줍니다.

  <exec>
      <executable>D:\User\Crazia\Work\win2007d\build\Test2007d.exe</executable>
      <baseDirectory>D:\User\Crazia\Work\win2007d\build</baseDirectory>
      <buildTimeoutSeconds>10</buildTimeoutSeconds>
  </exec>

<executable> 에 실행 파일을 적어주고 <task> 블록안에 넣어주시면 됩니다. 저는 <devenv> 블록 다음에 바로 넣어줬습니다.

출처 : http://crazia.tistory.com/entry/CppUnit-CI-서버와-통합

Cruise Control.Net 설치

CruiseControl 홈페이지 : http://cruisecontrol.sourceforge.net/
CruiseControl.Net 홈페이지 : http://confluence.public.thoughtworks.org/display/CCNET/Welcome+to+CruiseControl.NET

가정

  1. 소스버전관리시스템으로는 Subversion을 사용한다.

개요
CruiseControl.Net은 CI(Continuous Integration)를 위한 빌드 자동화를 구축하기 위해서 필요한 자동 빌드 툴이다

CI 시스템 구축

  1. .NET Framework SDK를 설치한다.
    Windows Installer를 실행시키기만 하면 된다.
  2. NUnit
    Windows Installer를 실행시키기만 하면 된다.
  3. NAnt
    1. 원하는 경로에 압축파일을 푼다. 여기서는 “C:\Program Files\ant-0.85-rc2″에 압축을 풀었다.
    2. [제어판->시스템->고급->환경변수->시스템환경변수->새로 만들기]에서 변수 이름 NANT_HOME, 변수값 C:\Program Files ant-0.85-rc2을 추가한다.
    3. [제어판->시스템->고급->환경변수->시스템환경변수->PATH]에 %NANT_HOME%;bin 을 추가한다.
  4. CruiseControl.Net
    1. CruiseControl.NET-1.0-Setup.exe 을 설치한다. 여기서는 기본설치경로 “C:\Program Files\CruiseControl.NET\”을 선택했다.
    2. CruiseControl.NET-CCTray-1.0-Setup.exe 을 설치한다.
    3. C:\Program Files\CruiseControl.NET\server\ccnet.config 을 메모장으로 연다. 프로젝트 설정을 추가한다.
    4. [관리도구->서비스->CruiseControl.NET Server->등록정보]에서 시작유형 ‘자동’, 서비스 상태 ‘시작’으로 설정한다.
  5. CCTray
    1. CCTray를 실행시킨다. 바탕화면에 바로가기가