새삼스럽게도 이제와서 Unit Test란걸 해본다.
TDD에 대해서는 익히 들어서 알고는 있지만, 막상 프로젝트를 진행하는 시점에서는 잘 사용하지 않았다.
그도 그럴 것이 한시적인 SI프로젝트에서 TDD 까지하면서 개발하는 사람을 본 적이 없다. 그런데 왜 하려고 하냐?
여러 개발 패턴을 적용하는 주요 목적이 코드 재사용성, 손쉬운 테스트, 결합도를 낮출 수 있다는 목적을 가지고 있기에 MVVP, MVP를 적용하고 각 모듈에 대한 검증(테스트)를 진행해보고자 XCTest를 돌려보려고 하는데 처음부터 난관에 부딪혔다.
프로젝트의 프로덕트명을 변경했더니 제목과 같은 오류가 발생되었다.
방안) 프로젝트의 Build Setting > Product Module Name란을 검색해서 찾아보면 나오는 이름으로 임포트를 하면 문제가 사라지는 경우가 있다.
@testable import 모듈명
그리고 다른 분이 알려준 내용에 보면 Build Setting > Enable Testing Search Paths 의 값을 Yes로 지정하면 수동으로 다시 설정을 할 수 있다고 하니 참고.
자 그럼, 테스트를 진행해보자 라며 시도했지만 다음 오류를 만났다.
Could not find test host for 모듈명
이 오류는 프로젝트를 선택한 다음, General 탭 아래 Targets에서 ...Tests 타겟을 선택한 다음, 우측의 Testing 항목에서 Host Application을 선택해주면 된다. 나의 경우 iPad용 타겟과 Mac용 타겟이 두개 있어, 아마도 오류가 난 것 같고, 일반적으로는 하나의 타겟만 있다면 오류가 나지 않을 것 같다.
테스트가 무사히 잘 되었다.
'프로그래밍 > Swift' 카테고리의 다른 글
iOS] UIDocumentInteractionController, PDF 뷰어 및 다운로드 & 저장 처리 (0) | 2023.06.13 |
---|---|
UIImage, cornerRadius 적용하는 방법 (0) | 2022.09.30 |
swift viewWillAppear 가 호출 되지 않는 경우(present & dismiss) (0) | 2022.06.24 |
Swift함수, 초 단위 값을 hh:mm으로 표현하기(with CustomStringConvertible) (0) | 2022.06.09 |
Swift 지정된 날짜(Date)의 요일 구하기 (0) | 2022.05.30 |