Kurs TDD cz. 18: NSubstitute

Pora przyjrzeć się trzeciemu najpopularniejszemu darmowemu frameworkowi, obok Moq i FakeItEasy, do tworzenia atrap w .NET – NSubstitute.

NSubstitute

Co wyróżnia tę bibliotekę:

  • Główny nacisk położono na prostotę w semantyce. Składnia biblioteki ma w założeniu jak najbardziej przypominać naturalny język. Ilość wyrażeń lambda została zredukowana do minimum.
  • W Moq każda atrapa to mock, w FakeItEasy fake, a w NSubstitute… substitute (z ang. “zamiennik”). Podobnie jak w dwóch wymienionych frameworkach, nie ma rozróżnienia na mock, stub, fake, spy, itp.

Dzięki temu, że biblioteka jest lekka, łatwa i przyjemna, doskonale nadaje się do celów edukacyjnych w temacie TDD i tworzenia atrap.

Continue reading

Kurs TDD cz. 17: FakeItEasy

Dziś w kursie TDD przyjrzymy się frameworkowi do tworzenia atrap, konkurencyjnemu do wcześniej poznanego Moq. FakeItEasy, bo o nim mowa, jest darmowy, łatwy w nauce, ma wsparcie dla C# i VB.NET, różni się od innych bibliotek nie tylko semantyką, ale także nieco innym podejściem do tematu tworzenia atrap.

fakeiteasy

Co więcej można powiedzieć o FakeItEasy?

  • W FakeItEasy wszystkie atrapy są fake’m. Nie ma rozróżnienia na mocki, stuby, itp.
  • Korzysta z API opartego na semantyce fluent i wyrażeniach lambda.
  • Jest rozszerzalny.
  • Posiada wsparcie dla bardziej zaawansowanych technik, m.in. strict fakes, argument matching, atrapy asynchronicznych metod.

Continue reading