본문 바로가기
728x90

test2

Android ViewModel Test - Junit4 단위 테스트가 무엇인지 이해하고, 적용해 본 경험이 있는 사람을 대상으로 설명하겠습니다. 이 글을 읽고 ViewModel 테스트와 친해지길 바랍니다! 화이팅! Android ViewModel Test AAC ViewModel은 사전 준비 없이 테스트하게 된다면 테스트에 실패합니다. 여기에는 크게 두 가지 경우가 있습니다. LiveData value 변경에 대한 테스트, Coroutine과 같은 비동기 작업에 대한 테스트입니다. 두 경우에 대한 실패 원인은 같습니다. 이는 테스트가 MainThread에서 작동하지 않는다는 것입니다. WorkerThread 테스트는 WorkerThread에서 작동합니다. 테스트는 MainThread에서 수행되지 않고, WorkerThread에서 작동합니다. 이것이 왜 Liv.. 2023. 9. 6.
Test Double (테스트 더블) Test Double 테스트가 어려운 객체를 테스트할 수 있게 해주는 객체 (ex. 데이터베이스에 영향을 주고 받는 경우.) 스턴트맨(정식명칙: 스턴트더블)에서 비롯된 이름. 크게 Dummy,Fake,Stub,Spy,Mock이 있다. 예제 코드 (kotlin) Dummy 테스트하고자 하는 객체의 생성을 위해 인스턴스화 하고 전달되는 객체. 실제 사용되지 않는 객체. Dummy 객체의 메서드가 호출되었을 때 정상 동작은 보장하지 않는다. 예제 코드) ExUserRepository 객체에서 User id를 사용해 User를 검색하는 기능을 테스트할 경우. ExUserRepository 객체를 인스턴스화 하기 위해 FailLogger를 생성자로 필요로 한다. 성공을 가정한 테스트기에 FailLogger가 호출.. 2023. 6. 19.
728x90