kane-young/iOS_yagom_starter_camp
Fork Repository으로부터 merge해서 Step2 피드백 수용 및 Step3 진행, 프로젝트 기록
리팩토링을 진행하면서 로직이 달라지게 된 부분이 있었는데 Unit Test를 통해 쉽게 찾을 수 있었음 👍🏼
@testable import 테스트할모듈
작성test_
로 시작 (테스트 케이스 인식을 위한 기본 Rule)XCTAssert(테스트할 코드,결괏값?)
- 테스트할 코드가 결괏값과 같은지코드 커버리지를 선택을 하면 코드 커버리지가 오른쪽에 표시되며 해당 코드가 테스트 되었는지 확인할 수 있다
help에 edit scheme 검색을 통해서 해당 설정 가능
Unit 테스트 수행 이후 Reports 항목을 통해서 확인 가능
Unit 테스트 도중 수행된 코드가 어느 부분인지 자세하게 볼 수 있다
나머지는 Zedd 블로그 참조ㅎ😅
Code Coverage
assert
함수는 디버깅 모드에서만 동작한다. 배포하는 애플리케이션에서는 제외된다.
주로 디버깅 중 조건의 검증을 위하여 사용한다
var someInt: Int = 0
assert(someInt == 0)
//만약 조건이 false라면 동작을 중지)
assert(someInt == 0, "someInt != 0")
//만약 조건이 false라면 동작을 중지시키고 두번 째 인자값을 출력한다
guard
함수는 많이들 써봤듯이 디버깅 모드 뿐만 아니라 많은 조건 식에서 많이 사용된다
특징이라면... guard else { } 구문 내에서는 무조건 return, break 등의 코드 종료를 지시하는 지시어가 있어야한다. 특정 구문을 빠르게 종료하는데 많이 사용된다