기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS CodeBuild의 테스트 분할 기능을 사용하면 여러 컴퓨팅 인스턴스에서 테스트 제품군 실행을 병렬화하여 전체 테스트 실행 시간을 줄일 수 있습니다. 이 기능은 CodeBuild 프로젝트 설정의 배치 구성과 buildspec 파일의 codebuild-tests-run
유틸리티를 통해 활성화됩니다.
테스트는 지정된 샤딩 전략에 따라 분할됩니다. CodeBuild는 아래와 같이 두 가지 샤딩 전략을 제공합니다.
- 균등 분포
-
equal-distribution
샤딩 전략은 테스트 파일 이름의 알파벳 순서에 따라 병렬 빌드로 테스트를 나눕니다. 이 접근 방식은 먼저 테스트 파일을 정렬한 다음 청크 기반 메서드를 사용하여 배포함으로써 유사한 파일이 테스트를 위해 함께 그룹화되도록 합니다. 비교적 작은 테스트 파일 세트를 처리할 때 권장됩니다. 이 방법은 각 샤드에 거의 동일한 수의 파일을 할당하는 것을 목표로 하지만 최대 차이가 1이지만 안정성을 보장하지는 않습니다. 후속 빌드에서 테스트 파일을 추가하거나 제거하면 기존 파일의 배포가 변경되어 샤드 간에 재할당이 발생할 수 있습니다. - 안정성
-
샤딩 전략은 일관된
stability
해싱 알고리즘을 사용하여 샤드 간에 테스트를 분할하므로 파일 배포가 안정적으로 유지됩니다. 새 파일을 추가하거나 제거할 때이 접근 방식을 사용하면 기존 file-to-shard 할당이 거의 변경되지 않습니다. 대규모 테스트 제품군의 경우 안정성 옵션을 사용하여 샤드 간에 테스트를 균등하게 분산하는 것이 좋습니다. 이 메커니즘은 거의 동일한 배포를 제공하여 각 샤드가 분산을 최소화하면서 비슷한 수의 파일을 수신하도록 하는 것을 목표로 합니다. 안정성 전략은 이상적인 동등 배포를 보장하지는 않지만 파일이 추가되거나 제거되더라도 빌드 전반의 파일 할당 일관성을 유지하는 거의 동일한 배포를 제공합니다.
테스트 분할을 활성화하려면 CodeBuild 프로젝트 설정에서 배치 섹션을 구성하여 원하는 parallelism
수준 및 기타 관련 파라미터를 지정해야 합니다. 또한 적절한 테스트 명령 및 분할 방법과 함께 buildspec 파일에 codebuild-tests-run
유틸리티를 포함해야 합니다.