Hvorfor er singletons vanskelig å teste?

Innholdsfortegnelse:

Hvorfor er singletons vanskelig å teste?
Hvorfor er singletons vanskelig å teste?

Video: Hvorfor er singletons vanskelig å teste?

Video: Hvorfor er singletons vanskelig å teste?
Video: The trick for testing code that relies on singletons! 💡 2024, November
Anonim

Grunnen til at det er vanskelig å teste en singleton-klasse er at du ikke kan initialisere klassen for hver test igjen, fordi den kun kan initialiseres én gang (og dermed gir deg mye arbeid med å stille inn alle verdiene riktig for hver test).

Hvorfor er det vanskelig å teste singleton?

Det er vanskelig å teste kode som bruker singletons.

Du kan ikke kontrollere opprettelsen av singleton-objektet fordi det ofte lages i en statisk initialisering eller statisk metode. Som et resultat kan du heller ikke håne oppførselen til den Singleton-forekomsten.

Hva er problemet med singletons?

Singler hindrer enhetstesting: En Singleton kan forårsake problemer for skriving av testbar kode hvis objektet og metodene knyttet til det er så tett koblet at det blir umulig å teste uten å skrive en fullt funksjonell klasse dedikert til Singleton.

Hva er ulempene med singleton i enhetstesting?

For å kjøre kode som inneholder singletons i en testsele, må vi slappe av singleton-egenskapen. Her er hvordan vi gjør det. Det første trinnet er å legge til en ny statisk metode til singleton-klassen. Metoden lar oss erstatte den statiske forekomsten i singletonen.

Hvorfor forstyrrer singleton enhetstesting?

I enhetstesting bør hver av enhetstestene være uavhengige av hverandre. En annen årsak til at Singleton-designmønsteret gjør livet ditt vanskelig i enhetstesting, er fordi de forblir i minnet til applikasjonen er i live. Derfor vedvarer de tilstanden så lenge applikasjonen forblir i minne.

Anbefalt: