출처: http://arcangeleri.blog.me/90089351278

VC++ 2008 셋팅 & Google Test

말할 것도 없습니다. Google은 C++은 전부 Google Test로 유닛 테스트를 한다고 합니다.

왜 더 Unit++ 같은 테스트 도구가 이미 있는데 Google Test를 쓸까요. 좋기 때문입니다.

제가 봤더니 확실히 좋은 기능도 많고 편합니다.

자 뭐 금강산도 식후경 일단 맛을 봐야 구글 테스트의 쫄깃함을 아실 수 있으실 겁니다.

자 일단 구글 테스트를 받아야 겠습니다.

http://code.google.com/p/googletest/downloads/list

 

전 VC++을 씁니다. 당연합니다. 전 MS빠 입니다.

다른 도구를 쓸 리가 없습니다. 그럼 바로 셋팅 들어갑니다.

압축을 푸시면

대략 이러합니다. MSVC 눈에 띄는 군요. 잽싸게 들어갑니다.

이걸 실행하면 멋지게 실행 됩니다.

2005든 2008이든 변환 마법사가 뜹니다. 별다른 셋팅 없이 그냥 Finish나 마침을 눌러서 변환 합니다.

앗차!

그 전에 압축을 푸시면 gtest 디렉토리가 읽기 전용입니다.

그래서 변환을 할 수 없다고 VS가 푸념을 늘어놓을 겁니다.

아래대로 셋팅합니다.

gTest 최상위 루트로 갑니다. gTest를 오른쪽 클릭합니다.

메뉴에서 맨 밑에 있는 속성을 클릭합니다.

 

 

 

이제 소스 코드가 있으니까 원하시는 입맛대로 소스를 라이브러리로 만드셔도 되고 소스 통째로 사용하셔도 됩니다.

만약 기존 유닛테스트를 하고 싶으신 프로젝트에 MFC를 사용하고 계시다면 컴파일 옵션에 /MT /Mtd / MDd /Md 옵션을 일치시켜주셔야 합니다. 안그러면 스텐다드 라이브러리는 사용하는 경우 already defined Linker error를 몸소 체험하시게 될 것입니다.

 

자 인제 예제를 해봅시다.

 

MFC라면 InitInstance나 win32 console이시라면 _tmain이 되겠습니다.

#include <gtest/gtest.h> 

 

void InitInstance() or

int main(int argc, char **argv)

{

      ::testing::InitGoogleTest(&argc, argv); 

    return RUN_ALL_TESTS(); 

}

 

Test(SampleTest, Test1)

{

    ASSERT_TRUE(true);

    EXPECT_TRUE(true);

}

 

아놔 여기까지 하신거면 절반은 하신겁니다.

아니 거의 다하신 겁니다.

 

내일부터 실전 들어갑니다.

정말 게임 코드를 가지고 해보도록 하겠습니다.

 

그리고 앞서 나가실 분은 다음 페이지를 참조하시면 편할 것 같습니다.

http://code.google.com/p/googletest/wiki/GoogleTestPrimer

영어라면 손발이 오글오글 하시다면 하루에 한번씩 제 블로그에 놀러오시면 됩니다.

 

그럼 +_+/ 



'Programming > Test' 카테고리의 다른 글

[펌] Google Test & Visual Studio 2008  (0) 2010.09.10
Posted by 세모아
,