Android

Android Testing Advanced

고급 Android 테스트: TDD, mocking, Coroutines, Flow, Compose UI, 테스트 커버리지

18 면접 질문·
Senior
1

테스트에서 Mock, Stub, Fake의 차이는 무엇인가요?

답변

Mock은 상호작용(누가 무엇을, 몇 번, 어떤 인자로 호출했는지)을 검증합니다. Stub은 검증 없이 미리 정의된 응답을 반환합니다. Fake는 단순화된 동작 구현(예: 인메모리 리포지토리)입니다. Mock은 behavior verification에, Stub은 state verification에, Fake는 가볍고 현실적인 대안에 사용됩니다.

2

Kotlin에서 mocking을 위해 MockK를 어떻게 사용하나요?

답변

MockK는 Kotlin 중심입니다: mockk<T>()로 double을 생성하고, every { ... } returns ...로 응답을 스텁하며, verify { ... }로 상호작용을 검증합니다. 코루틴(coEvery/coVerify), relaxed mocks, slot을 통한 인자 캡처를 지원합니다.

3

TDD(Test-Driven Development)란 무엇인가요?

답변

TDD는 코드보다 테스트를 먼저 작성하고 Red‑Green‑Refactor를 반복하는 것입니다: 실패하는 테스트, 통과시킬 최소한의 코드, 그 후 동작을 바꾸지 않고 리팩터링. 이점: 더 나은 커버리지, 테스트하기 쉬운 설계, 살아있는 문서.

4

runTest로 코루틴을 어떻게 테스트하나요?

5

Flow를 어떻게 테스트하나요?

+15 면접 질문

다음 면접을 위해 Android을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기