Iemesls, kāpēc ir grūti pārbaudīt vienas klases klasi, ir tas, ka jūs nevarat inicializēt klasi katram testam vēlreiz, jo to var inicializēt tikai vienu reizi (un tādējādi jums ir daudz darba, lai pareizi iestatītu visas vērtības katram testam).
Kāpēc ir grūti pārbaudīt vienvietīgos signālus?
Ir grūti pārbaudīt kodu, kurā tiek izmantoti vientonis.
Jūs nevarat kontrolēt viena objekta izveidi, jo bieži tas tiek izveidots ar statisku inicializatoru vai statisku metodi. Tā rezultātā jūs arī nevarat izsmiet šīs Singleton instances uzvedību.
Kāda ir problēma ar vientuļiem?
Singletons kavē vienību testēšanu: Singleton var radīt problēmas rakstot pārbaudāmo kodu, ja objekts un ar to saistītās metodes ir tik cieši saistītas, ka kļūst neiespējami pārbaudīt bez rakstīšanas. pilnībā funkcionāla klase, kas veltīta Singleton.
Kādi ir singleton trūkumi vienību pārbaudē?
Lai testa instalācijā palaistu kodu, kurā ir viens viengabals, mums ir jāatslābina vientonu īpašība. Lūk, kā mēs to darām. Pirmais solis ir pievienot jaunu statisku metodi vienvirziena klasei. Metode ļauj mums aizstāt statisko gadījumu atsevišķos gadījumos.
Kāpēc singleton traucē vienību testēšanu?
Vienību testēšanā katram vienības testam jābūt neatkarīgam citam no cita. Vēl viens iemesls, kādēļ Singleton dizaina modelis apgrūtina jūsu dzīvi vienību testēšanā, ir jo tie paliek atmiņā, līdz lietojumprogramma ir dzīva Tādējādi tie saglabā stāvokli tik ilgi, kamēr lietojumprogramma paliek atmiņa.