2010-07-05 6 views
8

50+ .H/.CPP 개의 파일/클래스 프로젝트가 있습니다. 각 클래스의 여러 측면을 테스트하는 메소드를 포함하는 자체 테스트 케이스로 모든 클래스를 테스트하고 싶습니다. 내 클래스는 다음과 같이 서로 다른 디렉토리에 있습니다boost :: test 라이브러리로 테스트 케이스를 구성하는 방법?

/project 
    /include 
    /SuperModule 
     Foo.h 
     Foo.cpp 
     .. 
    Alpha.h 
    Alpha.cpp 
    .. 
    /test   // I assume that my tests shall be here 
    main.cpp 
    Makefile 

내가 단위 테스트 프레임 워크로 boost::test을 사용하고 싶습니다. 내 파일을 어떻게 구성해야합니까? 이름을 어떻게 지정해야합니까? 몇 가지 힌트 나 링크 또는 제안을 보내 주시면 감사하겠습니다. 감사.

답변

2

비슷한 레이아웃에서 boost :: test를 사용하고 있습니다. 우리의 레이아웃입니다 -

/project 
    /include 
    /SuperModule 
     /Foo 
     foo.c 
     foo.h 
     /foo_unittest 
      foo_unittest.c // note - no separate header file is required 
          // for boost::test unit test.exe program. 

기본 레이아웃 규칙은 소스 코드와 동일한 디렉토리의 클래스 후 "foo_unittest"라는 이름의 하위 디렉토리에 클래스의 단위 테스트를 넣어하는 것입니다. 이 명명의 이점은

  1. 입니다. 소스 코드와 디렉토리는 서로 옆에 저장됩니다. 따라서 간단한 검사를 통해 단위 테스트를 작성했는지 여부를 알 수 있습니다.
  2. 또한 소스 코드를 복사 할 때 단위 테스트를 동시에 복사하는 것은 입니다.

우리 프로젝트가 지나치게 복잡하지 않기 때문에 (30-50 개의 주요 수업),이 시스템은 우리에게 적합합니다. 더 큰 프로젝트를 운영하고 있다면 이것이 최적의 솔루션이라고 생각하지 않습니다.

+0

이렇게하면 테스트 스위트에서 파일을 구성하는 방법에 대한 좋은 아이디어를 얻을 수 있습니다. http://stackoverflow.com/questions/9302777/how-to-achieve-organisation-of-test-suites-and-cases-with-boost –

관련 문제