Testen der abstrakten Klasse Konkrete Methoden

8

Wie würde ich Tests für die konkreten Methoden einer abstrakten Klasse entwerfen und organisieren? Speziell in .NET.

    
Russell Myers 19.09.2008, 19:49
quelle

6 Antworten

9

Sie müssen eine Unterklasse erstellen, die die abstrakten Methoden implementiert (mit leeren Methoden), aber keine der konkreten. Diese Unterklasse sollte nur zum Testen verwendet werden (sie sollte niemals in Ihren Produktionscode eingehen). Ignorieren Sie einfach die überschriebenen abstrakten Methoden in Ihren Unit Tests und konzentrieren Sie sich auf die konkreten Methoden.

    
Bill the Lizard 19.09.2008, 19:53
quelle
3

Verwenden Sie Rhino Mocks, es kann zur Laufzeit Implementierungen der abstrakten Klasse generieren und Sie können die nicht abstrakten Methoden aufrufen.

    
Ted Elliott 19.09.2008 20:16
quelle
1

Das erste, was einem einfällt, ist, diese Methoden in einer konkreten Kinderklasse zu testen.

    
Powerlord 19.09.2008 19:52
quelle
0

Irgendein Grund, das nicht nur beim Testen einer der Instanzen zu berücksichtigen?

Wenn das nicht funktioniert, können Sie wahrscheinlich eine Unterklasse nur zum Testen ohne eigene Funktionalität erstellen.

    
Bill K 19.09.2008 19:51
quelle
0

I Verwenden Sie immer das Stub / Mock-Objekt

    
Patrick Desjardins 19.09.2008 19:53
quelle
0

Sie müssen eine konkrete Testklasse definieren und erstellen, die aus dem Abstract stammt. In der Regel wird es eine Lichtscheibe sein, die nur Anrufe durchlässt.

    
ctacke 19.09.2008 19:55
quelle

Tags und Links