2012-01-24 7 views
0

필자는 프로퍼티 파일에서 값을 가져 오는 클래스 PropMap을 확장 한 FetchProp을 작성했습니다. 필자가 juit 테스트 케이스로 FetchProp을 실행하면 정확한 출력을 얻습니다. 즉, 원하는 방식으로 속성을 가져옵니다. 그런 다음 클래스 CreateReport를 작성했습니다. report.But의 생성에 도움이 FetchProp의 메서드를 호출하지만 CreateReport에 테스트 케이스를 실행할 때 FetchProp은 독립 실행 형을 실행할 때 사용했던 것처럼 속성을 가져 오지 못하고 있습니까?속성 파일에서 속성을 가져올 수 없습니다?

중 하나는 문제를 수

PS 수 있습니다 무엇을 제안 할 수 있습니다 : 나는 특성 파일이 배치되는 경로를 확인하고 난 속성 경로를 내가 프로그램을 실행하고 파일을 내가 원하는 속성을 가지고 때마다 파일을 표시하고 얻을.

+2

설명하는 동작을 보여주는 샘플 코드를 게시 할 수 있습니까? – casablanca

+0

wheres 코드 –

답변

0

속성 파일을 가져 오는 방법에 따라 달라질 수 있습니다. 당신은 같은 것을 사용하는 경우

private Properties readProps() throws FileNotFoundException, IOException { 
    File f = new File("c:\\path\\to\\file\\props.properties"); 
    Properties props = new Properties(); 
    props.load(new FileInputStream(f)); 
    return props; 
} 

를 ... 다음은 단위 테스트에서 작동하지만 응용 프로그램을 실행하지 않을 경우 수 있습니다. 다음과 같이 시도해보십시오.

private Properties readProps2() throws IOException { 
    InputStream stream = this.getClass().getResourceAsStream("props.properties"); 
    Properties props = new Properties(); 
    props.load(stream); 
    return props; 
} 

... 대신 classpath에서 파일을 읽으십시오.

관련 문제