Java 프로그램의 특정 실행에 참여한 코드 라인을 식별하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/289270

문제

IDE 내에 Java 프로그램이 있다고 가정하십시오 (이 경우 Eclipse). 이제 프로그램을 실행하고 어느 시점에서 종료되거나 자연스럽게 끝납니다.

a 편리한 적어도 한 번에 실행 된 선과 어떤 라인을 결정하는 방법 (예 : 예외 처리 또는 도달하지 않은 조건)을 결정하는 방법.

이 정보를 수집하는 수동 방법은 디버깅을 지속적으로 발전시키고 적어도 한 번은 전달 된 라인 세트를 유지하는 것입니다. 그러나 이미 그렇게하는 도구 나 프로파일 러가 있습니까?

편집 : 설명을 위해서만 :이 정보에 프로그래밍 방식으로 액세스 할 수 있어야하며 반드시 Junit 테스트에서는 필요하지 않습니다.

도움이 되었습니까?

해결책

Eclemma 좋은 시작이 될 것입니다 : 코드 커버리지 도구를 사용하면 커버리지 세션이 원하는 정보를 기록 할 수 있습니다.

alt text
(원천: eclemma.org)

다른 팁

당신이 묻는 것은 "적용 범위"라고합니다. 일부 도구가 이클립스에 통합되는 몇 가지 도구가 있습니다. 나는 사용했다 jcoverage 그리고 그것은 작동합니다 (나는 무료 평가판 기간이 있다고 생각합니다. 그 후에는 그것을 사야합니다). 나는 그것을 사용하지 않았지만 당신도 시도 할 수도 있습니다 CoverLipse.

질문을 올바르게 이해하면 표준 스택 트레이스 데이터보다 더 많은 것을 원하지만 Log4J 디버그 명령문을 사용하여 코드를 수동으로 도비하고 싶지 않습니다.

내가 생각할 수있는 유일한 것은 일종의 바이트 코드 추적을 추가하는 것입니다. 인용하다 계측 자바 바이트 코드. 기사 참조 코베르 투라 내가 사용하지 않았지만 필요한 것 같네요 ...

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top