2009-10-02 5 views
7

Eclipse에서 junit 테스트를 디버그하려하지만 첫 번째 또는 두 번째 행에 있지 않으면 중단 점이 실행되지 않습니다.Eclipse에서 JUnit 테스트의 중단 점 디버깅이 작동하지 않습니다.

작업 영역에서 모든 중단 점을 삭제하고 다시 만들고, 새 디버그 구성을 만들고, 테스트 방법을 개별적으로 실행하고, 다른 방법으로 테스트 클래스의 일부로 실행 해 보았습니다. 그러나 아무 소용이 모두 :-(

public void testLoadPatientsAndConvertToBeans() throws IOException, CDataGridException { 
    File file = fileutil.getFileFromPrefsOrPrompt(basefileDef); 

    CDataBuilder builder = new CDataDelimitedFileBuilder(file, 
    CDataDelimitedFileBuilder.DelimiterSettings.WINDOWS_CSV, 
    basefileDef); 

    // breakpoints placed on lines from here on do not fire 

    CDataCacheContainer container = 
    cacheIO.construct(
    new CDataNarrower(
     cacheIO.construct(builder) 
    ).setConvertMissing(true)); 

    assertEquals(13548, container.size()); 

    cacheIO.export(container, patients); 

    Collection<Patient> pBeans = patients.getBeans(); 

    assertEquals(container.size(), pBeans.size()); 

    Patient patient = pBeans.iterator().next(); 
    Map props = patient.getPropertyMap(); 

    System.out.println(props); 
} 

답변

7

이것은 Sun JDK 6 Update 14를 사용하는 경우 일 수 있습니다. similar SO question here을 참조하십시오. 이러한 경우의 가능한 해결책은 Sun JDK 6 Update 16을 사용하는 것입니다.

+0

Sun JRE 6 Update 16으로 업그레이드하는 것이 트릭입니다. Vineet에게 감사드립니다. – tukushan

+0

불행히도 나는 대답이 편집되지 않는 한 "투표가 너무 오래되어서 변경 될 수 없다"고 생각하며이를 업 보턴화할 수 없습니다. 편집 할 수 있습니까? – tukushan

+0

+1, @ tukushan 아직하지 않으 셨다면 지금 투표하실 수 있습니다. –

0

은 내 첫 직감 이클립스 캐시 클래스는 당신의 코드와 동기화이다. 그러나 깨끗한 시도 주어진/프로젝트를 다시, 그것을 고정해야한다 첫 번째/두 번째 줄에 중단 점을 넣을 수 있기 때문에 코드를 단계별로 실행하면 어떻게됩니까? 코드가 각 단계와 정렬됩니까? 그렇지 않으면 일식이 소스 코드와 다른 버전의 클래스를 가지고 있음을 보여줍니다. 만약 그들이 동일하다면, 당신이 이상한 버그를 발견했기 때문에 새로운 버전의 이클립스 (당신이 이미 이클립스를 다시 시작하려고했다고 가정했다)를 시도 할 것이다. (새로운 버전은 그것을 고정 시키거나 오래된 데이터를 정리할 수있다.) 미안하다. 더 이상 도움이 될 수는 없습니다.

+0

코드가 단계적으로 실행되어 정렬됩니다. 감사합니다 오스카. – tukushan