Neoself의 기술 블로그

XCTest 가이드 본문

개발지식 정리/Swift

XCTest 가이드

Neoself 2025. 1. 23. 21:55
  • tearDown(): 에러를 throw할 수 없습니다
  • tearDownWithError() throws: throws 키워드가 있어 에러를 throw할 수 있습니다

tearDownWithError(): Xcode 11.4부터 도입된 새로운 메서드입니다

 

 

Codable 프로토콜: Encodable과 Decodable 프로토콜을 함께 구현한 타입별칭(typealias)

 

Encodable: 데이터를 JSON Plist 등의 형식으로 변환 가능한 프로토콜

*Encoding: 데이터를 특정 형식으로 변환하는 과정(ex. String을 URL이나 Base64로 변환)

struct User: Encodable {
    let name: String
    let age: Int
    
    // JSON으로 인코딩
    let jsonData = try? JSONEncoder().encode(user)
}

 

Decodable: JSON, Plist 등의 데이터를 Swift 객체로 변환할 수 있는 프로토콜
*Decoding: 인코딩된 데이터를 원래 형태로 복원하는 과정

struct User: Decodable {
    let name: String
    let age: Int
    
    // JSON 디코딩
    let user = try? JSONDecoder().decode(User.self, from: jsonData)
}

 

.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)

URL에서 사용할 수 없는 특수문자들을 인코딩하는 역할을 합니다.