# Android Testing Advanced (Android) > Pengujian Android tingkat lanjut: TDD, mocking, Coroutines, Flow, Compose UI, dan test coverage - 18 pertanyaan wawancara - Senior - [Pertanyaan Wawancara: Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara.md) ## 1. Apa perbedaan antara Mock, Stub, dan Fake dalam pengujian? **Jawaban** Mock memverifikasi interaksi (siapa memanggil apa, berapa kali, dengan argumen apa). Stub mengembalikan respons yang sudah ditentukan tanpa verifikasi. Fake adalah implementasi sederhana yang berfungsi (misalnya, repository in-memory). Mock menekankan behavior verification, Stub mendukung state verification, dan Fake menyediakan alternatif ringan dan realistis. ## 2. Bagaimana menggunakan MockK untuk mocking di Kotlin? **Jawaban** MockK berpusat pada Kotlin: mockk() membuat double, every { ... } returns ... menetapkan respons, verify { ... } memeriksa interaksi. Mendukung coroutines (coEvery/coVerify), relaxed mocks, dan capture argumen melalui slot. ## 3. Apa itu TDD (Test-Driven Development)? **Jawaban** TDD berarti menulis tes sebelum kode dan mengiterasi Red‑Green‑Refactor: tes yang gagal, kode minimal untuk lulus, lalu refactor tanpa mengubah perilaku. Manfaat: cakupan lebih baik, desain lebih testable, dokumentasi hidup. ## 15 pertanyaan lagi tersedia - Bagaimana menguji Coroutines dengan runTest? - Bagaimana menguji Flow? Daftar gratis: https://sharpskill.dev/id/login ## Topik wawancara Android lainnya - [Dasar-Dasar Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-fundamentals.md): 24 pertanyaan, Junior - [UI dan Resource Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-ui-and-resources.md): 30 pertanyaan, Junior - [Siklus Hidup Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-lifecycle.md): 30 pertanyaan, Junior - [Navigasi Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-navigation.md): 26 pertanyaan, Junior - [Manajemen Data Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-data-management.md): 29 pertanyaan, Junior - [Networking Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-networking.md): 29 pertanyaan, Junior - [Testing Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-testing.md): 28 pertanyaan, Junior - [Android Gradle](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-gradle.md): 26 pertanyaan, Junior - [Dasar-dasar Bahasa Kotlin untuk Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-kotlin-language-essentials.md): 24 pertanyaan, Junior - [Room Database](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-room-database.md): 25 pertanyaan, Mid-Level - [Pekerjaan Latar Belakang](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-background-work.md): 18 pertanyaan, Mid-Level - [Jetpack Compose](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-compose.md): 28 pertanyaan, Mid-Level - [Izin dan Fitur Perangkat](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-permissions-and-device.md): 21 pertanyaan, Mid-Level - [Firebase untuk Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-firebase.md): 23 pertanyaan, Mid-Level - [Android MVVM Architecture](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-mvvm-architecture.md): 18 pertanyaan, Mid-Level - [Jaringan Android Lanjutan](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-networking-advanced.md): 13 pertanyaan, Mid-Level - [Koleksi dan Operator Kotlin](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-kotlin-collections-operators.md): 20 pertanyaan, Mid-Level - [Kotlin Coroutines dan Flow](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-kotlin-coroutines-flow.md): 20 pertanyaan, Mid-Level - [Injeksi Dependensi Android](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-dependency-injection.md): 15 pertanyaan, Mid-Level - [Android MVI Architecture](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-mvi-architecture.md): 17 pertanyaan, Mid-Level - [Android Clean Architecture](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-clean-architecture.md): 21 pertanyaan, Senior - [Android Compose Lanjutan](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-compose-advanced.md): 17 pertanyaan, Senior - [Android Performance and Monitoring](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-performance-monitoring.md): 13 pertanyaan, Senior - [Android Security and Privacy](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-security-privacy.md): 18 pertanyaan, Senior - [Android CI/CD and Release](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-cicd-release.md): 15 pertanyaan, Senior - [Android UX and Form Factors](https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-ux-form-factors.md): 18 pertanyaan, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/id/technologies/android/pertanyaan-wawancara/android-testing-advanced