구글테스트 예제

구글테스트 예제

`target_link_libraries(runTests ${GTEST_LIBRARY} gtest_main pthread)` Google C++ 테스트의 프레임워크는 xUnit 아키텍처를 기반으로 합니다. 자동 테스트 검색을 제공하는 크로스 플랫폼 시스템입니다. 즉, 테스트 도구 모음의 모든 테스트를 수동으로 등록할 필요는 없습니다. 치명적인 어설션(ASSERT_), 치명적이지 않은 어설션(EXPECT_) 및 프로그램이 예상대로 종료되는지 확인하는 death 테스트와 같은 풍부한 어설션 집합을 지원합니다. 이제 까다로운 부분이 온다: 우리는 우리의 이전 BankAccountTest 비품을 다시 사용 하 고 싶지만, 동시에 우리는 잔액을 초기화 하는 account_state 인스턴스를 사용 하 여. 여기는 어떻게 그것은 어떻게: 첫 번째 목표는 매우 쉽게 달성 될 수 있는 CxxTest에 대 한 출력 작가 JUnit xml로 출력 것 이다, 하지만 다른 목표와 함께 그것은 GoogleTest 프레임 워크를 시도 하는 좋은 시간 처럼 보였다. 이 옵션을 선택하면 프로그램이 컴파일되고 테스트가 실행됩니다. 단위 테스트 세션 창에서 테스트 상태에 대한 시각적 판독을 얻을 수 있습니다: Gtest-1.7.0-rc1.zip을 Google C++ 단위 테스트 또는 gtest-1.7.0-rc1.zip에서 다운로드한 다음 추출합니다. 그래서, 테스트를 실행 하기 위해, 구글 테스트 와 비슷한 코드와 함께 기본 진입점을 구현 해야: 이클립스 C ++에 대 한 Google 테스트 프레임 워크를 설정 하려고. 또한 CI 젠킨스 서버에서 자동화하려고합니다. 당신은 그것의 구성에 대한 몇 가지 세부 사항을 제공 할 수 있습니까?? 사전에 감사합니다. 🙂 그러나 곧 나는 기능 배고픈되었다. 먼저 허드슨 CI 서버에서 테스트 커버리지를 보고할 수 있기를 원했습니다.

둘째, 나는 시험을 개발하는 데 필요한 비계를 줄이는 데 관심이있게되었습니다. 셋째, CxxTest는 hxx 테스트 파일에서 cpp 파일을 생성하는 펄 스크립트이므로 프로젝트의 빌드 규칙의 복잡성이 증가했습니다. 중단, 당신은 융합 된 소스를 얻기 위해 구글 테스트 배포판에서 googletest / 스크립트 / fuse_gtest_files.py 스크립트를 실행해야합니다 – 다음 솔루션에 추가. 감사합니다 에릭, 내 프로젝트에 대한 gTest를 사용하여 시작하는 데 도움이. 모든 테스트 출력이 저장되고 “단위 테스트 세션” 창의 출력 창에서 액세스할 수 있어야 합니다. 단위 테스트 C ++ 응용 프로그램은 정확히 쉽지 않다. 포함 가능한 메타데이터가 없으면 단위 테스트를 실행하는 실제 프로세스를 코드에서 명시적으로 정의해야 합니다. 다행히도 Google 테스트와 같은 프레임워크는 이에 대한 포괄적인 지원을 제공합니다. 한 번 살펴보겠습니다. 안녕하세요, GoogleTest를 사용하여 하나의 간단한 단위 테스트를 설정하고 수행하려고하지만 항상 비주얼 스튜디오에서 어려움을 겪고 있습니다. 퓨어드 버전에 대한 참조가 있습니까? 감사합니다 GoogleTest 프레임 워크는 테스트를 정의하고 테스트를 적용하기 위해 매크로를 사용 : 상자 밖으로 일했다! 좋은! 구글 모의는 어떻습니까? 그에 대한 지침? 나는 그것이 테스트 폴드 아래에 지금 이해합니다.

마지막으로, 나는 대신이 작업을 수행 : mkdir / usr / 지역 / lib / gtest cp *.a / 지역 / lib / gtest ln -s / usr / lib/gtest/libgtest.a /usr/lib/libgtest.a ln-s /usr/local/lib/gtest/libgtest_main.a/usr/libtest/libgtest_main.a.a 로컬 lib. 대상에서 테스트를 실행하는 것은 주로 대상 기능에 따라 달라집니다. googletest를 실행하려면 I / O를 수행하기 위해 운영 체제가 필요하므로 임베디드 리눅스를 실행하는 경우 괜찮아야합니다. Googletest는 소스에서 사용할 수 있으므로 비교적 현대적인 컴파일러가있는 경우 대상을 컴파일하는 데 문제가 없어야합니다. Phil, ReSharper C++ 2016.1Boost.Test 프레임워크를 사용하여 작성된 테스트 실행에 대한 지원이 추가되었습니다.

0

You may also like