Android Testing Advanced
การทดสอบ Android ขั้นสูง: TDD, mocking, Coroutines, Flow, Compose UI และ test coverage
1Mock, Stub และ Fake แตกต่างกันอย่างไรในการทดสอบ?
Mock, Stub และ Fake แตกต่างกันอย่างไรในการทดสอบ?
คำตอบ
Mock จะตรวจสอบการโต้ตอบ (ใครเรียกอะไร กี่ครั้ง ด้วยอาร์กิวเมนต์ใด) Stub จะส่งคืนคำตอบที่กำหนดไว้ล่วงหน้าโดยไม่ตรวจสอบ Fake คือการ implement ที่ทำงานได้แบบง่าย (เช่น repository ใน memory) Mock เน้น behavior verification, Stub สนับสนุน state verification และ Fake เป็นทางเลือกที่เบาและสมจริง
2วิธีใช้ MockK สำหรับ mocking ใน Kotlin?
วิธีใช้ MockK สำหรับ mocking ใน Kotlin?
คำตอบ
MockK เน้น Kotlin: mockk<T>() สร้าง double, every { ... } returns ... กำหนดคำตอบ, verify { ... } ตรวจสอบการโต้ตอบ รองรับ coroutines (coEvery/coVerify), relaxed mocks และการจับอาร์กิวเมนต์ผ่าน slot
3TDD (Test-Driven Development) คืออะไร?
TDD (Test-Driven Development) คืออะไร?
คำตอบ
TDD คือการเขียน test ก่อนเขียน code และทำซ้ำ Red‑Green‑Refactor: test ที่ล้มเหลว, code ขั้นต่ำเพื่อให้ผ่าน, จากนั้น refactor โดยไม่เปลี่ยนพฤติกรรม ประโยชน์: coverage ดีขึ้น, การออกแบบที่ทดสอบได้ง่ายขึ้น, เอกสารที่มีชีวิต
วิธีทดสอบ Coroutines ด้วย runTest?
วิธีทดสอบ Flow?
+15 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Android อื่นๆ
พื้นฐาน Android
UI และทรัพยากร Android
Lifecycle ของ Android
การนำทาง Android
การจัดการข้อมูล Android
Networking Android
การทดสอบ Android
Android Gradle
พื้นฐานภาษา Kotlin สำหรับ Android
Room Database
การทำงานเบื้องหลัง
Jetpack Compose
สิทธิ์และฟีเจอร์ของอุปกรณ์
Firebase สำหรับ Android
Android MVVM Architecture
เครือข่าย Android ขั้นสูง
Collections และ Operators ใน Kotlin
Kotlin Coroutines และ Flow
การฉีด Dependency ใน Android
Android MVI Architecture
Android Clean Architecture
Android Compose ขั้นสูง
Android Performance and Monitoring
Android Security and Privacy
Android CI/CD and Release
Android UX and Form Factors
เชี่ยวชาญ Android สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี