Alasan mengapa sulit untuk menguji kelas tunggal adalah bahwa Anda tidak dapat menginisialisasi kelas untuk setiap pengujian lagi, karena hanya dapat diinisialisasi sekali (dan karenanya memberi Anda banyak pekerjaan untuk mengatur semua nilai dengan benar untuk setiap tes).
Mengapa sulit untuk menguji singleton?
Sulit untuk menguji kode yang menggunakan singletons.
Anda tidak dapat mengontrol pembuatan objek singleton karena sering dibuat dalam penginisialisasi statis atau metode statis. Akibatnya, Anda juga tidak dapat mengolok-olok perilaku instance Singleton itu.
Ada masalah dengan jomblo?
Lajang menghalangi pengujian unit: Seorang Lajang dapat menyebabkan masalah untuk menulis kode yang dapat diuji jika objek dan metode yang terkait dengannya begitu erat sehingga tidak mungkin untuk menguji tanpa menulis kelas yang berfungsi penuh yang didedikasikan untuk Singleton.
Apa kelemahan singleton dalam pengujian unit?
Untuk menjalankan kode yang berisi singleton dalam test harness, kita harus mengendurkan properti singleton. Inilah cara kami melakukannya. Langkah pertama adalah menambahkan metode statis baru ke kelas tunggal. Metode ini memungkinkan kita untuk mengganti instance statis di singleton.
Mengapa singleton mengganggu pengujian unit?
Dalam pengujian unit, setiap pengujian unit harus independen satu sama lain. Alasan lain yang menyebabkan pola desain Singleton membuat hidup Anda sulit dalam pengujian unit adalah karena mereka tetap berada di memori sampai aplikasi hidup Oleh karena itu mereka bertahan dalam keadaan selama aplikasi tetap di memori.