Unit Test Project에 설정
1.기존 gtest site에서 source download (https://code.google.com/p/googletest/)
2.압축을 푼 후 msvc 폴더의 gtest.sln solution파일 열기
3.Release로 전체 build로 gtest.lib 생성
4.include폴더의 gtest폴더와 gtest.lib 파일을 새로운 UnitTest Project에 복사
5.새로운 UnitTest Project에 (Win32 Console Project) Project 속성페이지->C/C+ 항목에 추가포함 디렉토리에 gtest include폴더의 위치를 설정. ex)../Include
6.UniteTest Project의 속성페이지->Linker의 입력항목에 gtest.lib 추가
7.속성페이지 C/C+에서 code generation(코드 생성)에서 Runtime Library설정을 Multi Thread로 변경(/MT)
-
main() 함수에 추가
testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS();
9.기타 google test 항목 추가
10.Run
TEST_F() 사용법
1.Fixture class 만들기
-
::testing::Test를 상속하여 Test용 class 새로 생성
-
생성자, 소멸자 만들기
-
SetUp(), TearDown()을 통해 consruct, deconstruct 구현
2.TEST_F()함수로 Test 추가
-
1.parameter에 Fixture class
-
2.parameter에 enum {}으로 선언한 type 설정
ex) enum dsp_open {}; TEST_F(SampleLibUnitTest, dsp_open) { int ret = test_init(0); EXPECT_EQ(1, ret); }
3.main()함수에 InitGoolgleTest()와 RUN_ALL_TESTS()수행
ex) GTEST_API_ int main( int argc, char **argv) { printf ("Running main() from gtest_main.cc\n"); testing ::InitGoogleTest(& argc, argv ); return RUN_ALL_TESTS(); }