2011-09-15 9 views
1

Emma를 사용하는 경우 먼저 Emma를 사용하여 jar를 계측합니다. 그 시간 동안 em 메타 데이터 파일이 생성되고 인스트루먼트 된 jar 파일을 통해 JUnit 테스트 케이스를 실행할 때 ec 파일이 생성됩니다. 어떤 것이 커버리지 리포트를 생성하는데 사용됩니다.Emma는 어떻게 작동합니까?

제 질문은 테스트 케이스를 실행할 때 em 파일 경로를 지정하지 않으므로 ec 파일을 어떻게 생성 할 수 있습니까? Emma가 실행하는 동안 포트를 사용한다는 것도 들었습니다. 그 항구는 무엇입니까?

답변

1

Andrew, 기본적으로 EMMA는 현재 폴더를 사용하여 coverage.em 파일을 찾습니다. 나는 그것이 모든 TCP 포트에서 수신 대기하고 있다고 생각하지 않으며, 빠른 여물통 EMMA 소스 코드를 수행했으며 소켓에 대한 참조를 찾을 수 없었습니다. 계측을 위해 클래스 경로에서 클래스 파일을로드하는 데 URL 만 사용합니다.

+0

OP는 Ajay, Andrew가 아닙니다. :) – adarshr

+0

:) 내 의구심에 대해 답장하는 데 시간을 할애 해 주셔서 감사합니다. – Ajay

+0

의심의 여지가없는 경우 답변을 수락 하시겠습니까? ;) –

1

Emma는 계측 단계에서 바이트 코드 조작이라는 기능을 사용합니다. 디 컴파일러에서 인스 트루먼트 된 클래스 파일을 열면 몇 줄의 코드가 추가로 추가되었다는 것을 알 수 있습니다.

보고를 수행하는 추가 코드입니다. 이 코드는 특정 행 번호의 코드가 실행되었음을 나타내는 간단한 로그처럼 간단합니다.

보고서를 생성 할 때 emma는 ec 파일을 사용하여 사람이 읽을 수있는 형식의 보고서를 생성합니다.

관련 문제