저는 프로그래밍 응용 프로그램입니다. 테스트하기 위해 파일 모의이 필요합니다. 아래에 내 코드 :EasyMock and File in Java
@Test
public void testPostMail() throws Exception
{
Emailer instance = new Emailer();
instance.setRecipientsFromFile(new File("list.txt"));
}
문제는, 내 하드 디스크의 파일에 의존하고 싶지 않아 (물론 나는 적절한 내용으로 파일을 만들고 테스트 후 삭제,하지만 난 할 수 있습니다 EasyMock으로 할 수 있습니다.) ,
1) 나는 아직도 오류가
2) classextension.EasyMock이되지 않습니다 "파일 인터페이스 아니다"
나는 그것을 org.easymock.classextension.EasyMock를 가져 와서 사용하려고하지만,
@Test
public void testSetReceipientsFromFile() throws Exception
{
File file = EasyMock.createMock(File.class);
FileReader in = EasyMock.createMock(FileReader.class);
BufferedReader br = EasyMock.createMock(BufferedReader.class);
EasyMock.expect(new FileReader(file)).andReturn(in);
EasyMock.expect(new BufferedReader(in)).andReturn(br);
EasyMock.expect(br.readLine()).andReturn("[email protected]");
EasyMock.expect(br.readLine()).andReturn("[email protected]");
EasyMock.replay(file, in, br);
EasyMock.verify(file, in, br);
// ...
}
편집 : 그래서 난 그냥 EasyMock에
내 작동하지 EasyMock에 코드를 사용해야합니다 내가 들어 있기 때문에 내가 Mockito로 EasyMock에에서 변경 궁금하네요 더 호의적 인 의견.
EasyMock에 묶여 있지 않다면 Mockito를 사용하십시오. 그것은 콘크리트 수업을 모의 수 있습니다. –
왜 널리 사용되는 API를 테스트하려고합니까? 그것은 틀림없이 잘 작동합니다. 코드를 테스트해야합니다. –
가능한 [easockock을 사용하여 구체적인 클래스 조롱] (http://stackoverflow.com/questions/1249317/mocking-a-concrete-class-using-easymock) –