테스트 추가가 쉬운 아키텍처
아키텍처 라운드의 평가 항목 중 하나가 "큰 리팩터링 없이 단위 테스트를 추가할 수 있는 구조인가"입니다. 어떤 설계 결정이 이 조건을 만족시키는지 예를 들어 설명해 주세요.
아키텍처 라운드의 평가 항목 중 하나가 "큰 리팩터링 없이 단위 테스트를 추가할 수 있는 구조인가"입니다. 어떤 설계 결정이 이 조건을 만족시키는지 예를 들어 설명해 주세요.
비즈니스 로직이 프레임워크(UIKit/SwiftUI/URLSession/Core Data)를 직접 모르게 경계를 두는 것이 핵심이다. 프로토콜로 정의한 의존성을 생성자로 주입하고, 순수 함수와 값 타입으로 상태 전이를 표현하며, 시간·랜덤·UUID 같은 비결정 요소도 주입한다.
테스트주관식기초
화면이 API 응답에 강하게 의존하는데, 서버 요청 없이 이 화면(뷰모델 포함)의 동작을 테스트하려면 코드를 어떻게 바꾸겠습니까?
#testability #dependency-injection
테스트주관식기초
"단위 테스트를 고려한 코드를 작성해 본 경험과 거기서 얻은 철학·노하우"를 묻는 질문입니다. 테스트를 염두에 두고 코드를 쓸 때 지키는 원칙을 구체적인 코드…
#testability #dependency-injection
아키텍처주관식기초
의존성 주입(Dependency Injection)과 의존성 역전 원칙(Dependency Inversion Principle)은 이름이 비슷한데 무엇이…
#testability #dependency-injection
아키텍처객관식기초
AnalyticsManager.shared처럼 코드 곳곳에서 직접 참조하는 싱글톤이 있는 코드베이스에서, 이를 쓰는 뷰모델을 단위 테스트하려 합니다. 올바른…
#testability #dependency-injection