# Generated 프로젝트 {#generated-projects} ::: warning REQUIREMENTS - 생성된 프로젝트 - Tuist 계정 및 프로젝트 ::: 생성된 프로젝트에서 선택적으로 테스트를 실행하려면 `tuist test` 명령을 사용합니다. 이 명령은 캐시 워밍업과 동일한 방식으로 Xcode 프로젝트를 해시하고, 성공하면 향후 실행에서 변경된 내용을 확인하기 위해 해시를 유지합니다. 향후 실행에서 `tuist test` 해시를 투명하게 사용하여 테스트를 필터링하여 마지막 테스트 실행 성공 이후 변경된 테스트만 실행합니다. 예를 들어 다음과 같은 종속성 그래프가 있다고 가정해 보겠습니다: - `FeatureA` 에는 `FeatureATests` 테스트가 있으며, `Core에 의존합니다.` - `FeatureB` 에는 `FeatureBTests` 테스트가 있으며, `Core에 의존합니다.` - `코어` 테스트 있음 `코어테스트` `튜이스트 테스트` 는 이와 같이 작동합니다: | 액션 | 설명 | 내부 상태 | | ------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | | `튜이스트 테스트` 호출 | `CoreTests`, `FeatureATests`, `FeatureBTests에서 테스트를 실행합니다.` | `FeatureATests`, `FeatureBTests`, `CoreTests` 의 해시는 유지됩니다. | | `기능` 업데이트됨 | 개발자가 대상의 코드를 수정합니다. | 이전과 동일 | | `튜이스트 테스트` 호출 | 해시가 변경되었으므로 `FeatureATests` 에서 테스트를 실행합니다. | `FeatureATests` 의 새 해시가 유지됩니다. | | `핵심` 업데이트됨 | 개발자가 대상의 코드를 수정합니다. | 이전과 동일 | | `튜이스트 테스트` 호출 | `CoreTests`, `FeatureATests`, `FeatureBTests에서 테스트를 실행합니다.` | `FeatureATests` `FeatureBTests`, `CoreTests` 의 새 해시는 유지됩니다. | `튜이스트 테스트` 바이너리 캐싱과 직접 통합하여 로컬 또는 원격 저장소의 바이너리를 최대한 많이 사용하여 테스트 스위트를 실행할 때 빌드 시간을 개선할 수 있습니다. 선택적 테스트와 바이너리 캐싱을 결합하면 CI에서 테스트를 실행하는 데 걸리는 시간을 크게 줄일 수 있습니다. ## UI 테스트 {#ui-tests} Tuist는 UI 테스트의 선택적 테스트를 지원합니다. 그러나 Tuist는 미리 대상을 알고 있어야 합니다. ` 대상` 매개 변수를 지정한 경우에만 Tuist는 다음과 같이 선택적으로 UI 테스트를 실행합니다: ```sh tuist test --device 'iPhone 14 Pro' # or tuist test -- -destination 'name=iPhone 14 Pro' # or tuist test -- -destination 'id=SIMULATOR_ID' ```