뱅크샐러드 iOS 개발팀의 테스트 코드 작성 비법 공개!
by DD
4년 전
조회수 18
테스트 코드 작성의 어려움을 극복하고, 단위 테스트를 쉽고 빠르게 작성하는 방법을 제시함
BaseTestCase, RxTestCase, EventLoggingTestCase, PresentationTestCase 등 테스트 유틸리티를 활용하여 테스트 코드의 가독성을 높임
TDD(Test-Driven Development) 도입을 위한 단계적 접근법과 EventLogging, Navigation 로직 테스트를 강조함
테스트 코드 작성을 위한 뱅크샐러드의 설계
뱅크샐러드는 BaseTestCase를 기반으로 RxTestCase, EventLoggingTestCase, PresentationTestCase를 구축했다. 구체적으로 RxSwift를 활용하여 비동기 로직 테스트를 용이하게 만들었다. 따라서 테스트 코드의 재사용성을 높이고, 보일러플레이트 코드를 줄여 개발 생산성을 향상시켰다.
TDD 도입의 단계적 접근법
TDD는 모든 영역에 즉시 적용하기 어렵다는 점을 인지하고, EventLogging과 같은 테스트하기 쉬운 영역부터 시작한다. TDD를 통해 테스트 코드를 먼저 작성하고, 구현을 진행한다. 반면, 점진적으로 TDD 적용 범위를 넓혀가며, 코드 품질과 유지보수성을 확보한다.
테스트 코드의 중요성: 살아있는 스펙 문서
자동화된 테스트는 가장 신뢰할 수 있는 스펙 문서 역할을 수행한다. 구체적으로, EventLogging과 같이 놓치기 쉬운 스펙을 테스트 코드로 표현한다. 따라서 테스트 코드는 개발 과정에서 중요한 역할을 하며, 코드 품질을 보장하고, 유지보수성을 향상시킨다.