Versi plugin sebelumnya saya dapat membuat instance geolocator, bagus dan pengujian unit saya sangat senang karena geolocator dapat diejek.
Sekarang semuanya statis ... Apakah ada cara baru yang tidak melibatkan metode statis?
@jaumard Saya akui ini mungkin bukan pilihan terbaik yang saya buat. Namun dalam praktik umum pertahanan saya tentang pengujian dan arsitektur aplikasi secara umum menyarankan bahwa Anda tidak boleh mengejek apa yang bukan milik Anda (baca lebih lanjut di sini ).
Saran saya adalah menulis pembungkus di sekitar geolocator dan mengejek pembungkusnya.
Tautan Anda lebih tentang TDD daripada pengujian unit secara umum. Juga jika kita tidak mengejeknya, tes tidak lulus, saya kira karena tidak ada implementasi saat menjalankan tes.
Saya juga ingin memeriksa apakah geolokasi dipanggil dalam kode saya dan memeriksa apa yang saya lakukan dengan hasilnya benar. Begitu banyak alasan Anda ingin mengejek deps pihak ketiga :)
Juga jangan mengejek deps menggunakan jaringan dan menjalankan tes Anda tanpa jaringan, itu akan menyenangkan :D atau bahkan dengan benar-benar menunjukkan jaringan dan dapatkan 1 jam untuk menjalankan tes Anda lol
Tapi ya saya akan melakukan pembungkus saya sendiri di sekitar geolocator, hanya ingin tahu apakah ada sesuatu yang dibangun sebelum melakukannya.
Tautan juga menyarankan untuk membuat pembungkus/adaptor/shim untuk dependensi pihak ketiga dan mengejeknya sebagai gantinya, untuk alasan spesifik yang Anda sebutkan. Dengan cara ini Anda hanya mengejek kode yang Anda miliki (karena Anda adalah pemilik pembungkus/adaptor/shim).
Ini memiliki manfaat sebagai berikut:
Saya akan menutup masalah ini, tetapi jangan ragu untuk melanjutkan diskusi;)
Komentar yang paling membantu
Tautan juga menyarankan untuk membuat pembungkus/adaptor/shim untuk dependensi pihak ketiga dan mengejeknya sebagai gantinya, untuk alasan spesifik yang Anda sebutkan. Dengan cara ini Anda hanya mengejek kode yang Anda miliki (karena Anda adalah pemilik pembungkus/adaptor/shim).
Ini memiliki manfaat sebagai berikut:
Saya akan menutup masalah ini, tetapi jangan ragu untuk melanjutkan diskusi;)