CxxTest 설정 Programming

Python이 설치되어 있어야 합니다.

다운로드

VS에서 디렉토리 include를 해주고

외부도구 설정
인수 : D:\Work\SDK\cxxtest\cxxtestgen.py -o$(SolutionDir)\TestRunner\TestRunner.cpp --gui=Win32Gui$(ProjectDir)$(ItemFileName)$(ItemExt)
(D:\Work\SDK\cxxtest 는 CxxTest가 설치되어 있는 경로 입니다.)

솔루션에 TestRunner라는 콘솔프로젝트를 추가해둡니다.

#include <cxxtest/TestSuite.h>
class SimpleTest : public CxxTest::TestSuite
{
public:
    void testSomething()
    {
       TS_ASSERT_EQUALS( 1, 1);
       TS_ASSERT(true);
    }
};

함수이름이 test로 시작해야 합니다.

이제 외부도구에서 CxxTest를 하면 TestRunner.cpp가 생성됩니다.(기존 TestRunner.cpp를 덮어씁니다.)
새로운 테스트 함수를 추가 했을때만 CxxTest를 돌려주면 됩니다.

TestRunner 프로젝트를 Run하면 테스트가 수행.

테스트 결과가 콘솔창에 출력되고 Green/Red 막대가 출력되는데 내용을 볼 사이도 없이 창이 바로 닫힙니다.
이걸 수정하려면 cxxtestgen.py 파일의 수정이 필요합니다.
writeMain(output)함수를 보면

원본 코드
return CxxTest::GuiTuiRunner<CxxTest::%s, CxxTest::%s>( argc, argv ).run();\n

수정한 코드
int res = CxxTest::GuiTuiRunner<CxxTest::%s, CxxTest::%s>( argc, argv ).run();\n    getchar();\n    return res;\n

이렇게 수정해주면 ok.

#include "stdafx.h" 추가하려면
CXXTEST_RUNNING 찾아서 윗줄에 (3.10.1 버젼에서는 402 라인)cxxtestgen.py
output.writelines( ['#include "',"stdafx.h",'"\n\n'] ) 추가하면 됩니다.

ps. 혹시 잘 안되시는 분들은 첨부된 python 파일을 cxxtestgen.py로 이름을 바꾸셔서 CxxTest폴더에 덮어쓰시면 됩니다. (3.10.1 버젼)


트랙백

이 글과 관련된 글 쓰기 (트랙백 보내기)
TrackbackURL : http://javawork.egloos.com/tb/741731 [도움말]

덧글

댓글 입력 영역