Saya mengikuti TDD dengan religius. Proyek saya biasanya memiliki cakupan pengujian 85% atau lebih baik, dengan kasus uji yang bermakna.
Saya melakukan banyak pekerjaan dengan HBase , dan antarmuka klien utama, HTable, sangat menyebalkan. Diperlukan 3 atau 4 kali lebih lama untuk menulis tes unit saya daripada menulis tes yang menggunakan titik akhir langsung.
Saya tahu bahwa, secara filosofis, tes yang menggunakan ejekan harus lebih diprioritaskan daripada tes yang menggunakan titik akhir langsung. Tapi mengejek HTable adalah rasa sakit yang serius, dan saya tidak begitu yakin ini menawarkan banyak keuntungan dibandingkan pengujian terhadap contoh HBase langsung.
Semua orang di tim saya menjalankan instance HBase node tunggal di workstation mereka, dan kami memiliki instance HBase node tunggal yang berjalan di kotak Jenkins kami, jadi ini bukan masalah ketersediaan. Tes titik akhir langsung jelas membutuhkan waktu lebih lama untuk dijalankan daripada tes yang menggunakan ejekan, tetapi kami tidak terlalu peduli soal itu.
Saat ini, saya menulis tes titik akhir langsung DAN tes berbasis mock untuk semua kelas saya. Saya ingin membuang tiruannya, tetapi saya tidak ingin kualitasnya menurun.
Apa yang kalian pikirkan?