TestCase w nUnit – usuwanie powielonego kodu

Często zdarza się, że musimy napisać kilka testów dla wybranej metody podając za każdym razem inne dane wejściowe. U mnie z reguły kończyło się to pisaniem kilku identycznych metod testowych, które różniły się od siebie jedynie wartościami argumentów podawanych do testowanego kodu. Przykład poniżej. Przykłady w F#, ale myślę, że każdy programista C# je zrozumie. […]

F# nie widzi kodu w kilku plikach

Podczas przerabiania świetnego kursu „A Functional Architecture with F#” autorstwa Marka Seemana natknąłem się na osobliwy problem. Po dodaniu pliku kontrolera (Controller.fs), pliku z typami (Rendition.fs) oraz użycia w kontrolerze typu zdefiniowanego na zewnątrz kompilator zaczął krzyczeć, że nie widzi zdefiniowanego typu. Pozornie wszystko wygląda dobrze. Nazwy są takie same, namespace też się zgadzają. Powyżej znajduje […]

Testy jednostkowe w F# – przyjazne nazwy

Po kilku latach pisania testów jednostkowych postanowiłem w końcu odejść od MSTest na rzecz nUnit. Powodów jest kilka. MSTest jest nierozwijany od dawna, więc jest daleko w tyle za konkurencją. Brakuje mu np. Assert.Throws. Jasne – oferuje atrybut ExpectedException, ale on sprawia problemy z pokryciem testów i do tego nie wygląda spójnie z innymi asercjami. Nie […]