2013-12-10 4 views
0

사이드 gradle과 ScalaTest에서 스칼라를 사용하고 있습니다.스칼라/Gradle 프로젝트 ... 초대형 테스트에 필요한 파일을 어디에 저장합니까?

궁금한 점 ... 사람들은 "커다란"(65MB)이지만 단위 테스트에서 요구되는 파일 객체를 어디에 저장합니까? 내 응용 프로그램은 이러한 대형 파일에서 이미지 처리를 수행합니다.

은 내가 단위 시험이 함수 하시겠습니까 유용한 메트릭 :-)

를 그러한 파일의 로컬 링크를 취하여 계산하는 기능을 갖는다. 이 함수에 대해 약 10 단위 테스트를하고 싶습니다. 그래서 10 개의 별개의 이미지 파일 (65 * 10 = 650MB)을보고 있습니다 ...이 데이터는 어디에 저장해야합니까? 이견있는 사람 ? 하나의 아이디어는 S3에 저장하고 단위 테스트가 시작될 때마다 자동으로 다운로드하는 것입니다. 소스 코드 저장소에 데이터를 저장하는 것은 좋지 않습니다. 소스 코드를 다운로드하는 과정이 길어지기 때문입니다. 너희들은 어떻게 생각하니?

건배!

답변

0

파일을 일부 URL을 통해 액세스 가능하게하고 테스트에서 다운로드하거나 (로컬로 존재하지 않는 경우) Maven/Ivy 종속 파일로 패키지를 만들고 Maven/Ivy 저장소에 게시 한 다음 그들은 Gradle의 의존성 관리를 사용합니다. 일반적으로 크기가 큰 파일에는 버전 제어를 사용하는 것이 좋지 않습니다.

0

만약 당신이 Git을 사용하고 있다면 .... 나는 Git Submodules을 사용할 것이고 git을 사용하지 않는다면 여전히 큰 -하지만 - 정말로 - 그 - 큰 파일을 호스트하기 위해 별도의 git 저장소를 사용할 것입니다.

. 나는 그것을 제어 할 수있는 소스 경우 그 파일은 I 소스 제어 ... 개발자 오늘날의 기준으로하고 그 큰되지 않습니다 그것에게 그것 않는 :

  • 은 결코 이제까지 변경하고 공개적으로 사용 가능한 (즉, 발표 라이브러리)하려고합니다. 기가 바이트에서
  • 대규모 대형

당신은 내가 당신이 파일을 다운로드 할 수있는 단위 테스트에서 뭔가를 쓸 수도있을 것 같군요 자식을 사용하지 않지만 그때는 아마 검증을 위해 파일의 체크섬을 수행 할 경우 파일이 변경되면 델타를 다운로드하는 것이 좋지 않을 것입니다 ..... 모두 git 않습니다.

당신이 단위 테스트에서 파일을 자동으로 다운로드하고자한다면 jgit을 봐라.하지만 개발자 지침을 포함하거나 수동으로 git을 실행하여 파일을 다운로드하는 빌드 스크립트를 포함 할 것이다.

관련 문제