RxBlocking은 바로 전 포스팅에서 정리했던 RxTest와 같은 TestScheduler는 없이 Observable의 Event방출을 검증하는 방법입니다. 단순히 Observable이 특정값들을 방출하는 것을 검증할 때는 RxTest가 아니라 RxBlocking만으로 충분할 것입니다. RxBlocking은 Observable의 next이벤트를 배열로 변환하는 방법을 제공하여, 해당 값을 TestAssertion으로 테스팅할 수 있도록 해줍니다. Observable에 .toBlocking()을 사용하면 Observable을 BlockingObservable로 전환해주고, BlockingObservable은 .toArray()를 통해 next이벤트들을 complete이벤트가 발생할 때까지 배열로 전환시..
보통의 유닛테스트라면 지난 글에서처럼 각 메서드들의 Input에 따른 Output값을 XCTest의 XCTAssertion을 통해서 테스트코드를 작성하면 됩니다. XCTest와 Nimble 기능을 구현하는 것도 중요하지만, '구현된 기능이 의도한 대로 당연하게 동작하는가?'를 테스트해보는 테스트 코드의 작성도 중요합니다. 배포를 하기 전에 사전에 문제를 발견할 수 있는 좋은 swifty-cody.tistory.com 하지만 RxSwift로 작성한 코드의 유닛테스트는 어떻게 할까요? RxSwift에서 사용하는 Observable은 '값이 아니라 시퀀스'이기 때문에 XCTest로 바로 테스트를 작성하기 어려울 수 있는데, 이를 위해서 RxTest와 RxBlocking이 준비되어 있습니다. (우리 Rx는 계획..