JUnit과 JMockit을 사용하여 File 오브젝트를 리턴하는 메소드를 테스트하려고합니다. 나는 둘 다 가진 초심자이다.JUnit/JMockit으로 테스트 파일 선택
내가 겪고있는 문제는 제대로 구현 메서드를 조롱하는 방법을 알아낼 수 없다는 것입니다. 실제로는 사용자가 반환 할 파일을 실제로 선택해야하기 때문입니다. 계속해서 오류가 있습니다 :
의견이 있으십니까?
다음public final class MyClass {
public static File OpenFile(Stage stage, String title, String fileTypeText, ArrayList<String> fileType) throws Exception {
File file = null;
try {
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle(title);
FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionsFilter(fileTypeText + fileType, fileType);
fileChooser.getExtensionsFilters().add(extFilter);
file = fileChooser.showOpenDialog(stage);
return file;
}
catc (Exception e) {
if(fileType==null) {
...
}
return file;
}
}
}
내 시도 JUnit 테스트의 재현입니다 :
@Test
public void TestOpenFile(@Mocked Stage stage) throws Exception {
final ArrayList<String> extensions = new ArrayList<String>();
extensions.add(".txt");
final File file = null;
new Expectations() {{
MyClass.OpenFile(stage, anyString, anyString, extensions); returns(file);
}};
assertEquals(file, MyClass.OpenFile(stage, "some title", "some type", extensions));
}
당신은 올바른 해결책 자신을 발견 이해하고 (내 개인적인 취향)을 작성하는이 쉽게 찾을 수 있습니다. 모의 협업 객체, 테스트중인 코드가 아님 (다른 테스트 시나리오에서이 코드를 조롱 할 수 있음). –