-
Xcode15에서 XCTest를 할 때 Testing... 에서 멈추는 현상공부/iOS 2024. 1. 2. 18:38
# 소개 🐮
Xcode에서 Unit Test를 수행할 때 너무 오래 걸리거나 멈추는 현상이 있었습니다.
단순히 테스트를 오래하는 것이 아닌, 빌드 자체는 1초 미만이었으나 테스트에 너무 많은 시간이 소요되는 문제입니다.
# 해결 과정 ⛴️
테스트를 한번 하려고 하면 너무 시간이 오래걸려 이상하다 생각했습니다.
코드를 잘못 작성했는줄 알고 이리저리 수정하며 삽질했는데 야곰 아카데미에 관련 예제가 있더군요.
https://yagom.net/courses/unit-test-%ec%9e%91%ec%84%b1%ed%95%98%ea%b8%b0/
Unit Test 작성하기 - 야곰닷넷
Unit Test 작성하기 테스트를 작성하면 좋다는 말을 많이 들어보셨을 것 같습니다. 하지만 막상 테스트를 작성해보려고 […]
yagom.net
위의 강의에서 제공하는 예제를 테스트를 해봤는데 비슷한 결과가 나타났습니다.
분명 간단한 사칙연산에 대한 테스트라 금방 끝나야 하는게 당연한데 말이죠.
# 첫 번째 시도: DerivedData 삭제 😳
이 녀석들은 빌드하면서 생기는 캐시같은 녀석들입니다.
Build Clean(⌘ + ⇧ + K)를 해서 해결이 되지 않을 때 직접 삭제할 수 있습니다.
cd /Users/사용자명/Library/Developer/Xcode/DerivedData
위의 경로에 가셔서
rm -rf *
모든 파일을 삭제해주시면 빌드 에러로 발생하는 문제가 해결됩니다.
# 두 번째 시도: Execute in parallel 해제 🎉
Parallelization by Test Target
애플 개발자 포럼에서 도움을 받았습니다. (이걸로 해결할 수 있었음)
하지만 저 경로대로 해결해보려했는데 아무것도 없더라구요.
제가 현재 Xcode 15를 사용중이라 그런지 Edit Scheme 버튼을 찾을 수 없었습니다.
뭣 그래서 이것저것 뒤져보다가 우연히 발견!!
프로젝트에서 Test 탭에서 프로젝트를 누르시면 활성화된 테스트가 나옵니다.
거기서 options를 누르면 Execute in parallel 버튼이 등장하며 비활성화 하면 됩니다.
이후 테스트를 진행해보면 훨씬 빠르게 테스트가 진행되는 것을 확인할 수 있습니다.
Xcode가 버전업 되면서 레이아웃이나 몇몇 단축키도 갑작스래 변경되어 좀 불편하긴 하네요.
'공부 > iOS' 카테고리의 다른 글
[iOS]텍스트필드가 등장할 때 타임아웃 뜨는 버그 해결법 (2) 2024.01.17 키체인을 활용해 jwt Token 안전하게 저장하기 (1) 2024.01.16 UIKit에서 Delegate Pattern를 쓰는 이유 (0) 2023.12.21 [UIKit]키보드 위에 수정 제안을 비활성화하기 (0) 2023.12.13 self에서 unexpected 에러가 발생하는 이유 (0) 2023.12.01