이글루 냠냠

namelessja.egloos.com

포토로그



[Spring][Test] MultipartFile Test Spring/MyBatis

파일 업로드에 사용되는 테스트 클래스.
내가 주로 사용하는 경우는 엑셀 파일이나 CSV파일을 읽어서 DB에 넣을 때 사용한다.

JUnit으로 테스트 할 때는 MockMultipartFile을 사용하면 테스트 클래스를 작성할 수 있다.

@Autowired
TestSo testSo;

public void imporTest() {
String fileDir = "/tmp";
String fileName = "import_target.xls";
String fileFullPath = String.format("%s/%s", fileDir, fileName);

MultipartFile multipartFile = new MockMultipartFile(fileFullPath, fileName, null, new FileInputStream(file));
// Do any works.
// testSo.parseXLS(multipartFile);
}


첫 번째 파라메터에서는 경로 + 파일명까지 전부 해서 넣어주고,
fileName 부분을 null로 주게 되면 업로드된 파일을 따로 기록하는 경우에는 파일명을 가져오지 못하므로 꼭 입력해준다.
context 타입은 필요에 따라 입력을 해주면 되며,
마지막 파라메터는 inputStream을 만들어 넘겨주면 된다. 이 경우에는 파일 관련이니 FileInputStream을 만들어 넘겨주었다.

덧글

댓글 입력 영역