728x90
SMALL
🚨 문제 상황
Xcode에서 테스트(⌘ + U)를 실행했는데,
앱이 빌드되기 전에 아래와 같은 에러가 뜬다면?
LemonLog encountered an error (Failed to install or launch the test runner.
Underlying Error: DSTROOT install style is not supported on this device.
To install internal content, the device must allow installing app bundles and roots,
and be running an internal OS build.)
✅ 결론부터 말하면 —
이건 코드 문제도, Core Data 문제도 아닙니다.
테스트를 실기기(iPhone) 에서 실행하려다 생긴 문제예요.
🧠 원인 분석
Xcode의 테스트 실행(Product ▸ Test 또는 ⌘ + U)은
앱을 빌드해서 기기에 설치하는 대신
테스트 전용 런너 앱(test runner) 을 설치해서 실행합니다.
그런데 👇
| 실행 대상 | 결과 |
| ✅ 시뮬레이터 | 정상적으로 Test Runner 설치 및 실행 |
| ❌ 실제 기기(iPhone) | Test Runner 설치 권한 없음 → “DSTROOT install style is not supported” 에러 발생 |
Apple은 “내부 개발 빌드용 iOS (Internal OS Build)” 환경에서만
테스트 러너를 설치할 수 있도록 제한하고 있어요.
일반 개발자 계정의 iPhone은 그 조건에 해당되지 않아요 ⚠️
✅ 해결 방법
✅ 시뮬레이터에서 테스트 실행하기 (권장)
가장 확실하고 빠른 방법입니다.
📍 단계별
Xcode 상단 Run 버튼 왼쪽 Target 선택 메뉴 클릭
✅ “iPhone 15 Pro (Simulator)” 와 같은 시뮬레이터 선택
단축키 ⌘ + U 로 테스트 실행
이제 콘솔에 정상적으로 테스트 로그가 출력됩니다 💪
✅ [SAVE TEST] happy_grade_2 감정일기 저장 성공
✅ [FETCH TEST] 총 3개의 감정일기 불러오기 성공
✅ [DELETE TEST] 감정일기 삭제 완료
🎯 결론
“DSTROOT install style is not supported on this device.”
이 에러는 실기기 테스트 불가 상태를 알리는 메시지일 뿐,
코드나 Core Data와는 전혀 관련 없습니다.
✅ 시뮬레이터를 선택하고 테스트를 실행하면 즉시 해결됩니다.
728x90
LIST
'감정일기(가칭)' 카테고리의 다른 글
| 🚀 Xcode에서 Core Data CRUD 테스트 실행하기 (0) | 2025.10.21 |
|---|---|
| 🧠 Core Data CRUD 테스트 자동화 — DiaryTestManager 완전 해설 (0) | 2025.10.21 |
| ⚙️ Core Data에서 catch가 작동하지 않는 이유 (0) | 2025.10.20 |
| 🧪 DiaryTestManager, 어디에 두는 게 맞을까? (0) | 2025.10.20 |
| 🍋 Core Data Fetch 고급 설계 — Predicate, Compound, FetchLimit 완전정복 (0) | 2025.10.20 |