반응형

[googletest] googletest 설치 및 간단한 테스트케이스 수행하기

 

리눅스 우분투 20.04 버전에서 googletest 코드를 다운로드하고, googletest 코드로 정적 library를 만든 다음, 이 library를 가지고 간단한 테스트케이스를 수행하여 보겠습니다. 

 

googletest 설치하기

우선 아래 경로에 접속합니다.

https://github.com/google/googletest

 

GitHub - google/googletest: GoogleTest - Google Testing and Mocking Framework

GoogleTest - Google Testing and Mocking Framework. Contribute to google/googletest development by creating an account on GitHub.

github.com

최신 release 버전을 다운받기 위해 아래 빨간색 부분을 클릭합니다.

아래 링크의 주소를 복사합니다.

https://github.com/google/googletest/archive/refs/tags/v1.13.0.tar.gz

아래 명령어로 파일을 다운로드하고, 압축을 해제합니다.

wget https://github.com/google/googletest/archive/refs/tags/v1.13.0.tar.gz
tar xvf v1.13.0.tar.gz

압축해제하면 googletest-1.13.0 이라는 폴더가 생성되는 것을 볼 수 있습니다.

 

gtest-all 빌드 및 라이브러리로 만들기

모든 src를 가지고 있는 gtest-all.cc 파일을 빌드합니다.

g++ googletest-1.13.0/googletest/src/gtest-all.cc -c -I ./googletest-1.13.0/googletest/include/ -I ./googletest-1.13.0/googletest/

빌드가 완료되면 gtest-all.o 파일이 생성되는 것을 볼 수 있습니다.

이 파일을 가지고 libgtest.a 이라는 라이브러리를 만들어 봅니다.

ar rcv libgtest.a gtest-all.o

 

간단한 테스트 케이스 수행하기

아래의 코드 내용으로  simple.cpp를 생성합니다.

#include <gtest/gtest.h>

// 테스트케이스
TEST(Sample, Test1){

}

TEST(Sample, Test2){
	FAIL();
}

int main(int argc, char** argv){
    testing::InitGoogleTest(&argc, argv);
    return RUN_ALL_TESTS();
}

 

아래 명령어로 simple.cpp를 빌드하는데, 위에서 만든 libgtest.a 라이브러리를 로드합니다.

g++ simple.cpp -lgtest -L. -I./googletest-1.13.0/googletest/include/ -pthread

빌드하면 a.out 파일이 생성되는데, 이를 실행하면 테스트 수행 결과가 출력됩니다.

반응형

+ Recent posts