최근 Xcode에서 새 프로젝트를 생성할 때 보면,
Testing System을 선택하라는 항목이 추가되었습니다.
여기에는 두 가지 옵션이 있어요 👇
XCTest (기본값)
Swift Testing (신규 프레임워크)
UIKit 또는 SwiftUI 프로젝트를 처음 시작할 때
“어떤 걸 선택해야 할까?” 고민되는 분들을 위해
두 옵션의 차이와 선택 기준을 정리해보았습니다.
✅ XCTest — 가장 안정적이고 검증된 선택
UIKit 기반 앱이라면,
특히 MVVM 패턴이나 Core Data, Firebase를 사용하는 경우라면
무조건 XCTest를 선택하는 걸 추천합니다.
1. 안정성 — iOS 개발의 표준 테스트 프레임워크로,
대부분의 예제와 라이브러리가 XCTest를 기준으로 만들어져 있습니다.
2. 호환성 — Core Data, Firestore, 네트워크, ViewModel 등
다양한 구조에서 이미 수많은 참고 자료가 존재합니다.
3. 도구 지원 — CI/CD, GitHub Actions, Fastlane 등
외부 개발 도구와도 완벽히 호환됩니다.
즉, UIKit + MVVM 구조의 앱이라면
가장 실용적이고 안전한 선택이 XCTest입니다.
🧪 Swift Testing — 최신 Swift 생태계용 신기술
Swift 5.10 이후 등장한 Swift Testing은
테스트를 좀 더 간결하고 읽기 쉽게 만드는 새로운 프레임워크입니다.
특징
1. SwiftUI와 궁합이 좋습니다.
2. 테스트 코드를 자연어처럼 표현할 수 있습니다.
3. 구조가 간결해서 학습용으로 적합합니다.
하지만 UIKit 기반 프로젝트에서는
아직 사용 예시와 자료가 충분하지 않기 때문에
실무보다는 실험적 프로젝트에 어울립니다.
✏️ “레몬로그”의 선택
내가 개발 중인 앱 “레몬로그”는
UIKit + MVVM + Core Data + Firestore를 사용하는 구조이기 때문에
XCTest 기반으로 프로젝트를 생성했습니다.
Swift Testing도 흥미로운 신기술이지만,
아직은 UIKit 프로젝트에서는 안정성과 참고 자료 측면에서
XCTest가 훨씬 유리합니다.
'감정일기(가칭)' 카테고리의 다른 글
| 🚀 Xcode 프로젝트와 GitHub 원격 저장소 연결 및 병합 오류 해결 완전 가이드 (0) | 2025.10.13 |
|---|---|
| 🍋 MIT License 적용 후 앱스토어 출시 시 주의사항 및 변경 가이드 (0) | 2025.10.13 |
| 🌿 감정일기 앱의 진화: Core Data에서 Firebase, 그리고 AI (0) | 2025.10.12 |
| ☁️ Core Data, iCloud, Firebase — 감정일기 앱에서 어떤 걸 써야 할까? (0) | 2025.10.12 |
| 🔄 Core Data + Firebase(Firestore) 동기화 구조 설계 (0) | 2025.10.12 |