Menu / szukaj

FluentValidation.Validators.UnitTestExtension wersja 1.1

Nowa wersja pakietu FluentValidation.Validators.UnitTestExtension jest dostępna. Pakiet umożliwia tworzenie testów jednostkowych Fluent Validator-ów w sposób bardziej efektywny.

W wersji 1.1 wprowadziłem następujące zmiany:

  • dodałem wsparcie do najnowszej wersji biblioteki FluentValidation 7.*,
  • wprowadziłem możliwość szybkiego testowania dwóch walidatorów – ScalePrecisionValidator oraz RegularExpressionValidator.

Projekt dostępny jest oczywiście na GitHubie.

Przyspieszanie AutoFixture

O bibliotece AutoFixture wspominałem już ostatnio we wpisie Lightning talk – Autofixture. Biblioteka ta pomaga nam w tworzeniu obiektów w trakcie fazy Arrange w testach jednostkowych. Dzięki niej możemy skupić się na tym co rzeczywiście ma zostać przetestowane, a nie na tworzeniu obiektów, które są potrzebne do przeprowadzenia testu. Dodatkowo chroni ona nas przed niepotrzebną modyfikacją testów w momencie zmiany wykorzystywanych w testach obiektów.

Ma ona drobną wadę, w zależności od obiektów, które tworzymy za jej pomocą może ona spowodować znaczące wydłużenie trwania testów jednostkowych. W szczególności, gdy za jej pomocą tworzymy obiekty związane z EntityFrameworkiem. Czytaj dalej

FluentValidation.Validators.UnitTestExtension

Chciałem Was zachęcić do używania biblioteki, którą ostatnio opublikowałem – FluentValidation.Validators.UnitTestExtension. Głównym jej celem jest rozszerzenie oraz uproszczenie możliwości testowania kodu, który wykorzystuje pakiet FluentValidation do walidacji obiektów.

Bibliotekę można zainstalować wykorzystując nugeta:


Install-Package FluentValidation.Validators.UnitTestExtension

lub ściągnąć kod z GithHuba.

Na wiki dotyczącej biblioteki FluentValidation można znaleźć propozycję pisania testów przygotowaną przez autorów biblioteki. W celu ułatwienia nam tego procesu autorzy przygotowali dwie metody ShouldHaveValidationErrorFor oraz ShouldNotHaveValidationErrorFor. Czytaj dalej

Testy jednostkowe – materiały szkoleniowe dla testerów

Zapraszam do zapoznania się z materiałami szkoleniowymi z testów jednostkowych. Szkolenie zostało przygotowane w ramach pracy w Objectivity Bespoke Software Specialists. Celem szkolenia było przybliżenie zagadnienia związanego z testami jednostkowymi testerom pracującym w Objectivity.

Szkolenie składało się z dwóch części:

  1. Unit Tests – The Beginning – szkolenie stanowi wstęp do zagadnienia pisania testów jednostkowych, z materiałów można dowiedzieć się:
    • co to są testy jednostkowe,
    • jak należy pisać je poprawnie,
    • co należy robić, aby w ramach pracy nad projektem pisać takie testy lepiej,
    • jak działają testy jednostkowe.
  2. Unit Test – Let’s write some code – druga część szkolenia jest już bardziej nastawiona na element praktyczny. Przedstawia w jaki sposób piszemy testy jednostkowe przy użyciu xUnita oraz Moq. Oprócz tego po krótce zostały w niej przedstawione inne frameworki testowe (nUnit oraz MS Test), NSubstitute oraz narzędzia do badania pokrycia kodu. Oczywiście nie zabraknie również pokazania jak uruchamiać i debugować napisane wcześniej testy.

Materiały dostępne są na firmowym koncie GitHub:

  1. Unit Tests – The Beginning
  2. Unit Test – Let’s write some code

Mam nadzieję, że pomimo faktu, że szkolenie zostało przygotowane dla testerów to osoby pełniące inne funkcje znajdą również coś dla siebie.

Testy uczące

Testy uczące – ciekawa koncepcja, na którą natknąłem się w książce Roberta C. Martina Clean Code: A Handbook of Agile Software Craftsmanship, która polega na pisaniu testów jednostkowych do komponentów firm trzecich. Początkowo może to się wydać dziwne, aby pisać testy do elementów, które kupiliśmy od innej firmy. W końcu kupujemy element, który powinien być przetestowany i działać bezbłędnie, a my dodatkowo powinniśmy zaoszczędzić czas i pieniądze na takim zakupie, ze względu na to, że nie będziemy musieli napisać tego komponentu. Czytaj dalej

Testowanie aplikacji Windows Phone

Testowanie to temat rzeka. Każdy programista ma na ten temat swoje zdanie. Dlatego też nie chcę poruszać tematów związanych z ideologią. Natomiast chcę się podzielić małym znaleziskiem. Niedawno przeglądając śledzone zasoby znalazłem rozwiązanie, które umożliwia automatyzację testów na platformie Windows Phone 7. Pewnym mankamentem tego rozwiązania jest ograniczenie do przeprowadzania testów tylko na emulatorze, ale z drugiej strony w trakcie automatycznych testów na serwerze budującym raczej nie będzie podłączony telefon. Drugim minusem jest wykorzystanie sterowania myszką w trakcie testowania. Powoduje to, że nie możemy nic robić na komputerze w trakcie wykonywania testów.

Czytaj dalej

Darmowe narzędzie do badania pokrycia kodu – PartCover

W trakcie pisania kodu przyzwyczailiśmy się już do tego, że należy równolegle pisać testy. Podejść, kiedy i jak pisać testy jest wiele. Do wyboru mamy też kilka dostępnych frameworków testowych, ale nie o tym chciałem napisać. W tym artykule chcę poruszyć temat badania pokrycia kodu testami. Czytaj dalej