Strona głównaUżytkownik

dariuszwozniak | użytkownik

dariuszwozniak
dariuszwozniak
1 742,45
157 dni, 6 godzin, 9 minut temu
21 kwietnia, 2013
dotnetomaniak.pl

In some cases, there are classes with constructors that are impossible to mock with proxy-based mocking frameworks (such as Moq, FakeItEasy, NSubstitute, etc). In this article, I will present how to create a test for class that is impossible to mock. Some constructors might be difficult or even impossible to mock because of:There&##x27;s...

Dziel się z innymi:
How to test a class that has constructor impossible to mock? | Dariusz Woźniak | Blog

Sztuka programowania czwartek, 9 listopada 2023 17:52:16 GMT dariuszwozniak 3 spam? źrodło rozwiń

Is catch the same as catch(Exception)? Not exactly. There is a small subtle nuance that causes catch(Exception) to be not hit. Chances that it happen are, however, close to zero very close to zero. According to the CLR via C# book (Richter, 2012): All programming languages for the CLR must support the throwing of Exception-derived objects because the Common Language Specification (CLS) mandates thi...

Dziel się z innymi:
Is catch the same as catch(Exception)? Well, not exactly... | Dariusz Woźniak Blog

Inne niedziela, 5 listopada 2023 14:58:59 GMT dariuszwozniak 1 spam? źrodło rozwiń

Scrutor to sprytna biblioteka, która pozwala na automatyczną rejestrację zależności (dependency injection) dla kontenera IOC Microsoft.Extensions.DependencyInjection. Ideą biblioteki Scrutor jest skanowanie kodu źródłowego, np. assembly, celem automatycznej rejestracji zależności wedle zadanych przez nas reguł.

Scrutor — automatyczna rejestracja zależności (dependency injection) - Dariusz Woźniak — Blog

Narzędzia 889 dni, 7 godzin, 29 minut temu dariuszwozniak 74 źrodło rozwiń

W testach bardzo często mamy do czynienia z powtarzaniem tego samego kodu. Tak samo ma się sprawa z testowaniem null-checków (zw. inaczej jako guard clauses) w konstruktorach. Jeśli chcemy napisać test dla takiego przypadku, to zazwyczaj jest on napisany jako osobna metoda. Jak możemy sobie uprościć życie? Z pomocą przychodzi biblioteka AutoFixture.Idioms. Aby móc skorzystać z funkcji do automatycznego testowania null-checków w konstruktorach, potrzebujemy zainstalować dwa nugety:AutoFixture.Idi...

Tagi: Moq, TDD
Dziel się z innymi:
Automatyczne testowanie guard clauses w konstruktorach - Dariusz Woźniak — Blog

Sztuka programowania 1682 dni, 9 godzin, 33 minuty temu dariuszwozniak 85 źrodło rozwiń

W jaki sposób mockować (za pomocą Moq) metody ze słowem kluczowym out? Przyjrzyjmy się bliżej problemowi…

Tagi: Moq, TDD
Dziel się z innymi:
Mockowanie out - Dariusz Woźniak — Blog

Sztuka programowania 1693 dni, 9 godzin, 32 minuty temu dariuszwozniak 83 źrodło rozwiń

NUnit w wersji 3.6 wprowadził dość ciekawą funkcję – Assert.Multiple. Dzięki niej, dostajemy informacje na temat wszystkich testów, które nie przeszły. Przyjrzyjmy się temu bliżej… Do tej pory, używając kilku asercji naraz, jedna niespełniona asercja powodowała, że dalszy kod nie jest wykonywany.

Dziel się z innymi:
Assert.Multiple | DariuszWozniak .NET

Sztuka programowania 2643 dni, 18 godzin, 6 minut temu dariuszwozniak 162 źrodło rozwiń

Test-Driven Development pojawia się w kontekstach :techniki,metody,metodologii i metodyki. Które z tych określeń poprawnie definiuje TDD? Zacznijmy od definicji poszczególnych pojęć: technika: (1) «wiedza na temat praktycznego wykorzystania osiągnięć nauki w przemyśle, transporcie, medycynie itp.; też: praktyczne wykorzystanie tej wiedzy» (2) «metoda» metoda: «świadomie stosowany sposób postępowani...

Tagi: TDD
Dziel się z innymi:
TDD: Technika, metoda, metodologia czy metodyka? | DariuszWoźniak .NET

Sztuka programowania 2682 dni, 3 godziny, 9 minut temu dariuszwozniak 76 źrodło rozwiń

Jeśli estymacja czasowa nie sprawdza się w naszym projekcie (co jest wielce prawdopodobne w przypadku oprogramowania), to możemy się posłużyć estymacją relatywną. Wielkość relatywna ma, w przeciwieństwie do estymaty bezwzględnej (najczęściej czasowej), ogromną przewagę, gdyż: Minimalizuje błędy związane z przewidywaniem czasu poświęconego na złożone i skomplikowane zadania...

Dziel się z innymi:
Estymacja: Czym są Story Pointy? | DariuszWoźniak .NET

Sztuka programowania 2686 dni, 8 godzin, 21 minut temu dariuszwozniak 156 źrodło rozwiń

Estymacja, czyli szacowanie projektu programistycznego to bardzo często bolączka każdego zespołu. Czego użyć do szacowania naszego projektu:estymat godzinowych,roboczodniowych,Story Pointów,koszulkowych,a może w ogóle nie korzystać z estymat #noestimates #yolo? Postaram się przedstawić sposoby or...

Tagi: Agile, estimate
Dziel się z innymi:
Estymacja czasowa/godzinowa (oraz Cynefin Framework, PERT) | DariuszWoźniak .NET

Sztuka programowania 2702 dni, 6 godzin, 3 minuty temu dariuszwozniak 149 źrodło rozwiń

To już ostatnia część kursu TDD (przed podsumowaniem) na tym blogu. Tym razem, formuła artykułu jest odmienna. Zamiast przedstawiać dane zagadnienie, to ja pytam Ciebie, czytelniku, o TDD… Jeśli uczysz się TDD, to warto przed wygooglowaniem odpowiedzi zastanowić się nad każdym z tych punktów i postarać się odpowiedzieć na pytanie.

Tagi: TDD
Dziel się z innymi:
Kurs TDD cz. 25: Otwarte pytania

Sztuka programowania 2767 dni, 9 godzin, 38 minut temu dariuszwozniak 145 źrodło rozwiń

Najprawdopodobniej spotkałeś się z tym problemem: Kod zastany, napisany przez nas lub nie, na pewno nie perfekcyjny i ostatecznie bez testów jednostkowych (ang. legacy code). Co teraz? Wstrzymać dotychczasowe prace nad projektem i pisać testy jednostkowe? A może całkowicie zaniechać pisania testów, bo skoro nigdy nie było testów, to po co pisać je teraz? Do tej pory omawialiśmy TDD z perspektywy pisania...

Tagi: TDD
Dziel się z innymi:
Kurs TDD cz. 24: Czy pisać testy jednostkowe do istniejącego kodu (legacy code)? | DariuszWoźniak .NET

Sztuka programowania 2792 dni, 9 godzin, 34 minuty temu dariuszwozniak 224 źrodło rozwiń

Test-Driven Development ma niezaprzeczalnie bardzo pokaźną liczbę zalet jednak jednym z problemów stojących na przeszkodzie we wdrożeniu i stosowaniu tej metodologii jest fakt, że pisanie testów jednostkowych wymaga większego nakładu czasowego programisty. Nie licząc czasu na zmianę sposobu myślenia oraz naukę zespołu, pisanie testów jednostkowych może trwać nawet dwukrotnie dłużej niż w sposób „beztestowy”.

Tagi: TDD
Dziel się z innymi:
Kurs TDD cz. 23: Czy to się opłaca? | DariuszWoźniak .NET

Sztuka programowania 2830 dni, 17 godzin, 56 minut temu dariuszwozniak 198 źrodło rozwiń

Pokrycie kodu (ang. code coverage) testami to:(liczba wyrażeń pokrytych testami) / (liczba wszystkich wyrażeń) * 100% Innymi słowy, jest to procentowy współczynnik pokrycia kodu testami. Pokrycie kodu najczęściej mierzy się badając liczbę wyrażeń (ang. statements), choć niekiedy spotkać się można z pokryciem kodu opartym o: – ilość linii kodu, – ilość branchy (branch coverage), – ilość stanów (condition...

Dziel się z innymi:
Kurs TDD cz. 22: Pokrycie kodu testami (Code Coverage) | DariuszWoźniak .NET

Sztuka programowania 2862 dni, 8 godzin, 47 minut temu dariuszwozniak 146 źrodło rozwiń

Rodzaje framerków do tworzenia atrap możemy podzielić na dwie kategorie:constrained (z ang. ograniczony)unconstrained (nieograniczony) Do pierwszej kategorii zaliczamy wszystkie do tej pory poznane frameworki do tworzenia atrap – Moq, FakeItEasy, NSubstite – a także Rhino Mocks, NMock oraz EasyMock. Ich cechą charakterystyczną jest ograniczona możliwość tworzenia atrap. Biblioteki te generują kod dziedzicząc...

Tagi: TDD
Dziel się z innymi:
Kurs TDD cz. 21: Rodzaje frameworków do tworzenia atrap | DariuszWoźniak .NET

Sztuka programowania 2925 dni, 8 godzin, 14 minut temu dariuszwozniak 150 źrodło rozwiń

Jedną z największych trudności dla osoby zaczynającej przygodę z testami jednostkowymi są: Metody i klasy static. Niederministyczne lub/i niepowtarzalne zależności.

Tagi: TDD
Dziel się z innymi:
Kurs TDD cz. 20: Mockowanie DateTime.Now, random, static, itp. | DariuszWoźniak .NET

Sztuka programowania 2942 dni, 8 godzin, 26 minut temu dariuszwozniak 133 źrodło rozwiń

Nomenklatura w świecie TDD, a w szczególności ta dotycząca tworzenia atrap, jest źródłem wielu niejasności. Powodem takiego stanu jest fakt, że definicje różnią się w zależności od źródła, tj. książki,  lub frameworka. W poprzednich częściach poznaliśmy trzy najbardziej popularne frameworki do tworzenia atrap dla .NET, dla których...

Tagi: Moq, TDD
Dziel się z innymi:
Kurs TDD cz. 19: Mock, stub, fake, spy, dummy | DariuszWoźniak .NET

Sztuka programowania 2947 dni, 17 godzin, 1 minutę temu dariuszwozniak 141 źrodło rozwiń

Pora przyjrzeć się trzeciemu najpopularniejszemu darmowemu frameworkowi, obok Moq i FakeItEasy, do tworzenia atrap w .NET – 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.

Tagi: nsubstitute, TDD
Dziel się z innymi:
Kurs TDD cz. 18: NSubstitute | DariuszWoźniak .NET

Narzędzia 2972 dni, 1 godzinę, 52 minuty temu dariuszwozniak 166 źrodło rozwiń

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.

Tagi: fake, fakeiteasy, TDD
Dziel się z innymi:
Kurs TDD cz. 17: FakeItEasy | DariuszWoźniak .NET

Narzędzia 2976 dni, 7 godzin, 43 minuty temu dariuszwozniak 127 źrodło rozwiń

W tym artykule przyjrzymy się ciut bardziej zaawansowanym technikom tworzenia atrap przy pomocy Moq: argument matching, verify, callback. Wszystkie przykłady zostaną zaprezentowane przy użyciu Moq, jednak konkurencyjne frameworki w zakresie niewiele się różnią w zakresie tych technik.

Tagi: Moq, TDD
Dziel się z innymi:
Kurs TDD cz. 16 – Moq cz. 2: Argument Matching, Verify, Callback | DariuszWoźniak .NET

Sztuka programowania 3011 dni, 17 godzin, 14 minut temu dariuszwozniak 91 źrodło rozwiń

Moq to najpopularniejszy framework do tworzenia atrap w .NET. W tej części kursu poznamy jego składnię i podstawowe możliwości.

Tagi: Moq, TDD
Dziel się z innymi:
Kurs TDD cz. 15: Wstęp do Moq | DariuszWoźniak .NET

Sztuka programowania 3018 dni, 18 godzin, 56 minut temu dariuszwozniak 137 źrodło rozwiń

1 2 3

Najaktywniejsi w tym miesiącu