블로그 이미지
평범하게 살고 싶은 월급쟁이 기술적인 토론 환영합니다.같이 이야기 하고 싶으시면 부담 말고 연락주세요:이메일-bwcho75골뱅이지메일 닷컴. 조대협


Archive»


 

'Test Code Coverage'에 해당되는 글 1

  1. 2008.01.17 Cobertura를 이용한 커버러지 테스트시 주의할 사항 (1)
 
서버쪽에서 Cobertura를 이용한 커버러지 분석을 할때
주의할점은

Cobertura는 기본적으로 ASM을 이용하여, 테스트를 진행할 코드에 커버러지 분석 코드를 삽입하는 방식이다. (AOP와는 다르게 STATIC한 방식을 사용)
그렇기 때문에, Instrumented 된 코드가 반드시 실행되도록 클래스패스에 삽입 하거나 또는 패키징 할때 Instrumented 되지 않은 코드를 WEB-APP에 먼저 복사한후 그 다음에 Instrumented된 코드를 복사하여 Overwrite가 되게 해야 한다.

그리고, Cobertura는 커버러지 분석한 정보를 메모리에 담아 놨다가 서버가 shutdown될 당시에 한꺼번에 파일에 쓰기 때문에 메모리 요구량이 높을 수 있다.
그래서 각 단위 테스트마다 리스타트를 해서 메모리가 오버 되지 않게 유지 해야 한다.

기동 스크립트에서는
JAVA에 -D 옵션으로 -Dnet.sourceforge.cobertura.datafile=파일명.ser 로 지정하고
Cobertura에서 사용하는 파일들 corbertura.jar, asm, asm-tree, jakarta-oro.. jar들을 클래스 패스에 삽입해야 한다.

이렇게 하고 Instrumented된 코드를 수행하면, (비단 JUnit이 아니더라도) 수행한 내역을 *.ser 파일에 저장하게된다.
본인은 구글 클라우드의 직원이며, 이 블로그에 있는 모든 글은 회사와 관계 없는 개인의 의견임을 알립니다.

댓글을 달아 주세요

  1. 2012.01.17 10:03  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다