우찬쓰 개발블로그
테스트 코드, ViewModel.launch 의 delay 이슈 본문
반응형
ViewModel의 테스트 코드를 짜다가 ViewModel.launch에 delay가 있을경우, 시간차 문제로 테스트 코드가 도달하지 못하는 문제를 마주했다.
advanceUntilIdle() 를 사용하면 해결될줄 알았건만 애석하게도 테스트코드는 계속 delay()의 다음으로 도달하지 못했다.
곰곰히 생각해보니 결국 Coroutine의 Context 와 관련된 문제일것 같아서 내 코드를 훑어보니, 아무생각없이 @Before에 넣어둔 아래 코드가 문제였다.
Dispatchers.setMain(Dispatchers.Unconfined)
StandardTestDispatcher() 로 교체
Dispatchers.setMain(StandardTestDispatcher())
이후 advanceUntilIdle() 가 정상 동작하는 것을 확인 완료.
반응형
'안드로이드 > 안드로이드 개발' 카테고리의 다른 글
Strange compile error of Pull Request Sonar (0) | 2024.03.25 |
---|---|
Activity LaunchMode & Intent Flag정리 (0) | 2023.08.24 |
WebView의 canGoBack()과 goBack() 이 이상하게 동작하는 이슈 (2) | 2023.03.30 |
커스텀뷰 개발 - SmoothSeekBar (0) | 2023.03.14 |
안드로이드 Layout Top Border만 넣기 (0) | 2023.03.06 |
Comments