1. 테스트가 되는 타겟의 빌드 세팅을 변경한다.
Other Linker Flags: add "-lgcov"
GCC_GENERATE_TEST_COVERAGE_FILES: Set to YES (안해도 작동됨)
GCC_INSTRUMENT_PROGRAM_FLOW_ARCS: Set to YES (안해도 작동됨)
C/C++ Compiler Version: GCC 4.2 (if you are on XCode 4) iOS deployment target: 4.2 (LLVM은 작동안됨)
Precompile prefix header: NO (안해도 작동됨)
2. 별도의 테스트 타켓은 build phases 부분의 Compliler Flags에 속성값을 입력한다..
-fprofile-arcs -ftest-coverage
3. objective c의 gcovr의 버전은 현재(2011.06) 2.0 에서 정상 동작한다. 만약 제대로 실행이 안될경우 버전을 확인하도록함 (2.1버전에서 작동안함)
gcovr --version
4. 아래의 스크립트로 정상 동작하는지 확인
xcodebuild -configuration Debug -target <타겟명> -sdk iphonesimulator
<gcovr설치된 경로>/gcovr -r <프로젝트 경로>/ -x
gcovr는 xcodebuild를 통해 생성된 build 내 gcda파일을 분석하는 방식이다. 즉 첫번째로 xcodebuild를 통해 gcda파일이 제대로 생성되었는지 확인 후 gcda가 생성되었다면 gcovr를 통해 분석이 될텐데 제대로 결과값이 안나오게 되면 gcovr의 문제일 가능성이 크다
'iOS' 카테고리의 다른 글
UIImage 카메라 롤에 추가 (0) | 2011.06.15 |
---|---|
NSFileManager 디렉토리 위치 정의 (0) | 2011.06.11 |
단위 테스트시 plist가 제대로 읽어지지 않을때 (0) | 2011.05.31 |
KeychainItemWrapper 주의사항 (0) | 2011.05.25 |
Xcode4 cocoa touch Header comment Template 수정 (0) | 2011.04.26 |