ContextFor<> zum Testen des SUT

In meinen Projekte der letzten Jahren ist mit der Zeit eine Hilfsklasse fürs Testen entstanden. Das Problem war das Erstellen des SUT mittels Konstruktor, welcher bei Dependency Injection entsprechend viele Paramter hat oder haben kann.

Hier ein Beispiel mit „nur“ 5 Konstruktor Parameter.

Dadurch ist Builder entstanden, welcher für jeden Konstruktor Parameter des SUT ein Mock mittels NSubstitute erzeugt. Auf diese generierten Instanzen kann über die `For<>()`-Methode mit dem entsprechenden Typ zugegriffen werden. Mittels `Use<>()` kann die generierte Instanz ersetzt werden, beispielsweise durch einen komplexen Mock.

Im folgenden sind kleine Beispiele für die Verwendung. Mehr Beispiele finden sich auf der Projektseite von [NEdifis](https://github.com/awesome-inc/NEdifis), in dem diverse Hilfsklassen fürs Testen hinterlegt sind.

Der Code für den Contest findet man hier, oder auch auf der Projektseite in der aktuellen Version. Benutzt werden in der Bibliothek NUnit, NSubstitute und FluentAssertions.


Posted

in

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert