2012-06-14 7 views
0

Java 코드의 호출 계층 구조 분석에 도움이되는 도구가 있습니까? 근본적으로 메소드를 선택하고 계층 구조를 생성 한 다음 계층 구조 경로의 최고 레벨 조각 (모든 루트)을 디스크에 직렬화하여 그 위에 몇 가지 통계를 얻을 수 있고 위험을 더 잘 이해할 수있는 방법을 찾고 있습니다. /이 코드가 리팩터링 될 경우 노력을 테스트합니다.Java 호출 계층 구조 분석

최종 목표는 Java Web App의 특정 메소드 (레이어가 무엇이든 상관 없음)에 대해 주어진 메소드가 활용되는 모든 진입 점 (Struts 액션, 웹 서비스)을 파악하는 것입니다. 이클립스는 호출 계층 구조에 항상 사용되는 멋진 도구를 가지고 있지만 분석중인 방법은 너무 많이 사용되어 수동으로 나무를 확장하고 모든 것을 직접 입력하는 것이 현실적이지 않을 것입니다.

도움을 주시면 감사하겠습니다.

+0

로거를 사용하고 원하는 관점에서 로그를 분석하십시오 (baregrep 또는 유사한 도구 사용). – Thinhbk

+0

잘 모르겠지만 호출 된 경로 (스택 추적)를 조사하기 위해 로거를 사용하려고하면 아직 호출되지 않았을 수도있는 많은 코드 실행 경로가 내 요구 사항에 계속 적용될 가능성이 있습니다. 나는 약 300 개 이상의 진입 점을 다루고있다. –

답변

0

Cobertura을 살펴보십시오. 테스트 커버리지를 모니터링하는 도구이지만 필요한 것에 사용할 수없는 이유는 없습니다. 보고서 (sample report)는 매우 포괄적이어서 어떤 행을 실행했는지, 몇 번이나 반복했는지 확인할 수 있습니다.

비슷한 도구는 Emma이며 Cobertura보다 최근에 업데이트되었습니다. 나는 Emma를 사용한 적이 없기 때문에 Emma가 얼마나 잘 작동하는지에 대해서는 언급 할 수 없습니다. sample report은 Cobertura 's와 유사합니다.