Testy jednostkowe. Świat niezawodnych aplikacji. Wydanie II
- Kategoria:
- informatyka, matematyka
- Wydawnictwo:
- Helion
- Data wydania:
- 2014-08-29
- Data 1. wyd. pol.:
- 2014-08-29
- Język:
- polski
- ISBN:
- 9788324687770
Poznaj możliwości testów jednostkowych!
System informatyczny to inteligentne połączenie modułów i zależności, otoczone setkami tysięcy, a nawet milionami linii kodu źródłowego. Zmiana w jednym obszarze może mieć fatalny wpływ na działanie systemu w zupełnie innym miejscu. Ta zależność prowadzi do ogromnych kosztów wprowadzenia nawet najdrobniejszej zmiany w oprogramowaniu. Czy istnieje rozwiązanie tego problemu? Jak stworzyć system, w którym błyskawiczna weryfikacja lub wprowadzona zmiana nie spowodują nowych błędów w innej części? Oczywiście, że można to zrobić! Odpowiedzią na te i wiele innych problemów są testy automatyczne.
Ten przewodnik to doskonała okazja, by głębiej poznać temat testów jednostkowych. Jeżeli uważasz, że ich pisanie jest uciążliwe, czasochłonne, trudne lub po prostu nie wiesz, jak je tworzyć, ta książka rozwiąże wszystkie Twoje problemy! W trakcie lektury dowiesz się, jak pisać testy, tworzyć zestawy testowe oraz przygotowywać makiety i namiastki. Poznasz narzędzia Moq, FakeItEasy oraz Typemock Isolator. Ponadto zdobędziesz wiedzę na temat organizacji testów oraz strategii testowania kodu odziedziczonego. Książka ta jest obowiązkową lekturą dla wszystkich programistów C# szukających świetnego przewodnika po świecie testów jednostkowych!
Dzięki tej książce:
rozwiejesz swoje wątpliwości dotyczące testów
poznasz najpopularniejsze narzędzia wspomagające testowanie
zorganizujesz swoje testy jednostkowe
zapoznasz się z kluczowymi elementami dobrych testów
stworzysz niezawodny i tani w utrzymaniu kod
Niezawodny kod jest w Twoim zasięgu!
Porównaj ceny
W naszej porównywarce znajdziesz książki, audiobooki i e-booki, ze wszystkich najpopularniejszych księgarni internetowych i stacjonarnych, zawsze w najlepszej cenie. Wszystkie pozycje zawierają aktualne ceny sprzedaży. Nasze księgarnie partnerskie oferują wygodne formy dostawy takie jak: dostawę do paczkomatu, przesyłkę kurierską lub odebranie przesyłki w wybranym punkcie odbioru. Darmowa dostawa jest możliwa po przekroczeniu odpowiedniej kwoty za zamówienie lub dla stałych klientów i beneficjentów usług premium zgodnie z regulaminem wybranej księgarni.
Za zamówienie u naszych partnerów zapłacisz w najwygodniejszej dla Ciebie formie:
• online
• przelewem
• kartą płatniczą
• Blikiem
• podczas odbioru
W zależności od wybranej księgarni możliwa jest także wysyłka za granicę. Ceny widoczne na liście uwzględniają rabaty i promocje dotyczące danego tytułu, dzięki czemu zawsze możesz szybko porównać najkorzystniejszą ofertę.
Mogą Cię zainteresować
Książka na półkach
- 2
- 2
- 1
- 1
- 1
- 1
Cytaty
Bądź pierwszy
Dodaj cytat z książki Testy jednostkowe. Świat niezawodnych aplikacji. Wydanie II
Dodaj cytat
OPINIE i DYSKUSJE
Kolejny wpis programistyczny. Książka ta kiedyś była polecana przez Maciej Aniserowicza (z 5 lat temu, przed jego zmianą paradygmatu działania). Pierwsza cześć lektury była bardzo dobra - ugruntowałem sobie wiedzę wyniesiona z lat praktyki. Niestety końcowe przemyślenia autora były dość chaotyczne. Mimo wszystko polecam.
Kilka wskazówek, które mogą się przydać, jeśli ktoś chce zwiększyć swoje umiejętności pisania testów:
-Assert.Throws() jest lepsze niż atrybut (adnotacja) Expected, bo dokładnie wskazujemy, gdzie, i w jakiej metodzie, powinien zostać wyrzucony wyjątek
-Fabryka do inicjalizacji obiektu, na którym wykonujemy testy, to najlepsze rozwiązanie przy tworzeniu testów
-Szwy to miejsca, w których można podłączyć różne funkcjonalności - namiastki (stuby)
-Nie wiedziałem ze w środowisku .Net jest tryb warunkowej kompilacji.
-Różnica między namiastką a obiektem - makietą (mockiem) jest taka, że mock zapisuje stan i zazwyczaj asercje są wykonywane na tym mocku i sprawdzają ten stan.
-Zaleca się tworzenie tylko jednego mocka na test i resztę namiastek. Więcej niż jeden mock oznacza, że testujemy więcej funkcjonalności niż jedną i powinniśmy rozbić metodę.
-Testy nie powinny sprawdzać czy zostały wywołane namiastki bo zakończy się to stanem "testing hell"
-Zamiast porównywać całe obiekty lepiej porównywać kilka właściwości za pomocą mechanizmow dopasowywania właściwości (String.contains etc). Inaczej wpadamy w tzw. “testing hell”
-Zbyt wiele makiet zmniejsza czytelność kodu. Poza tym pojedynczy test powinien sprawdzać jedną funkcjonalność “zamockowana” (najlepiej przez 1 mock)
-Gdy to możliwe należy unikać tworzenia obiektów makiet na rzecz namiastek (stosunek 1/20 to granica funkcjonalnych testów)
-Frameworki izolacji nazywane ograniczonymi to takie, które nie potrafią imitować metod statycznych, nie wirtualnych i prywatnych. Frameworki te po prostu generują kod danych makiet namiastek w trakcie trwania testu
-Bardzo dobry sposób testowania zależności od czasu to stosowanie w calym projekcie klasy, w której można arbitralnie wprowadzić czas
-Dodając testy jednostkowe do dużych projektów warto zacząć od testów integracyjnych, które sprawią, że na pewno dodanie testów jednostkowych i refaktoryzacja niczego nie popsuje
Kolejny wpis programistyczny. Książka ta kiedyś była polecana przez Maciej Aniserowicza (z 5 lat temu, przed jego zmianą paradygmatu działania). Pierwsza cześć lektury była bardzo dobra - ugruntowałem sobie wiedzę wyniesiona z lat praktyki. Niestety końcowe przemyślenia autora były dość chaotyczne. Mimo wszystko polecam.
więcej Pokaż mimo toKilka wskazówek, które mogą się przydać, jeśli ktoś...