Testy jednostkowe. Zasady, praktyki i wzorce
- Wydawnictwo:
- Helion
- Ocena:
- 5.8/6 Opinie: 0
- Stron:
- 296
- Druk:
- oprawa miękka
- Dostępne formaty:
-
PDFePubMobi
Opis ebooka: Testy jednostkowe. Zasady, praktyki i wzorce
Każdy inżynier oprogramowania zna teoretyczne podstawy testowania. O tym, że sumienne przeprowadzenie testów ma podstawowe znaczenie dla jakości gotowego produktu, nie trzeba nikogo przekonywać. A jednak wciąż zbyt często okazuje się, że zaplanowanie, napisanie i przeprowadzenie testów jednostkowych w praktyce nie jest łatwym zadaniem. Co gorsza, niewłaściwe testy psują kod, mnożą błędy i zabierają mnóstwo cennego czasu i pieniędzy. Okazuje się, że dla uzyskania maksymalnej jakości projektu, który trzeba dostarczyć w krótkim czasie, konieczne jest nauczenie się praktycznego stosowania zasad i wzorców testowania jednostkowego.
Jeśli znasz już podstawy testowania jednostkowego, dzięki tej książce nauczysz się projektowania i pisania testów, które obierają za cel model domeny i pozostałe kluczowe obszary kodu. Ten przejrzyście napisany przewodnik poprowadzi Cię przez proces tworzenia zestawów testowych o optymalnej wartości, bezpiecznej automatyzacji testowania i umiejętnego włączania go w cykl życia oprogramowania. W książce znalazły się uniwersalne wskazówki dotyczące analizy dowolnych testów jednostkowych oraz porady odnoszące się do zmian testów następujących wraz ze zmianami kodu produkcyjnego. Nie zabrakło również informacji, dzięki którym sprawnie zidentyfikujesz i wykluczysz ewentualne antywzorce testowania. Materiał został bogato zilustrowany przejrzystymi przykładami kodu napisanego w C#. Naturalnie, mają one zastosowanie także dla innych języków programowania.
W książce między innymi:
- cel testowania jednostkowego i cechy dobrych testów
- fundamenty porządnego testowania jednostkowego
- wpływ zaślepek i sterowników na stabilność testów
- style testowania jednostkowego
- zalety i ograniczenia testowania integracyjnego
Przed wdrożeniem dobrze przetestuj swój kod!
Dobre praktyki testowania jednostkowego pomogą Ci osiągnąć maksymalną jakość projektu i krótki czas dostarczenia rozwiązania. Niewłaściwe testy z kolei popsują Twój kod, pomnożą błędy, pochłoną czas i pieniądze. Nauczenie się sposobu właściwego testowania jednostkowego, które zwiększa Twoją produktywność i końcową jakość oprogramowania to Twój obowiązek zarówno wobec samego siebie jaki całego projektu.
Testy jednostkowe to książka, która nauczy Cię jak projektować i pisać testy, które obierają za cel model domeny i pozostałe kluczowe obszary Twojego kodu. Z tego przejrzyście napisanego przewodnika dowiesz się, jak stworzyć zestawy testowe o optymalnej wartości, bezpiecznie automatyzować proces testowania i włączyć go w cykl życia oprogramowania. Gdy spojrzysz na swoje zadania przez pryzmat testowania, zaskoczy Cię o ile wzrasta jakość Twojego kodu, gdy rośnie jakość Twoich testów.
Co znajdziesz w środku:
- uniwersalne wskazówki do analizy dowolnych testów jednostkowych,
- perspektywę testowania pozwalającą zidentyfikować i wykluczyć antywzorce,
- rady odnośnie zmiany testów wraz ze zmianami kodu produkcyjnego,
- wytyczne odnośnie korzystania z testów integracyjnych do weryfikacji działania całego systemu.
Ksiażka dla osób znających podstawy testowania jednostkowego. Przykłady napisane w języku C# mają zastosowanie także w innych językach.
"Ta książka to nieocenione źródło wiedzy."
Greg Wright, Kainos Software Ltd.
"To wartościowa i otwierająca oczy zachęta do podjęcia wysiłku i testowania we właściwy sposób, czyli robienia tego, co jest nam wszystkim potrzebne, niezależnie od doświadczenia."
Mark Nenadov, BorderConnect
"Żałuję, że nie miałem tej książki 20 lat temu, gdy zaczynałem karierę w wytwarzaniu oprogramowania."
Conor Redmond, Incomm Product Control
"To właśnie ta książka o testowaniu jednostkowym, na którą od dawna czekałem."
Jeremy Lange, G2
Wybrane bestsellery
-
Jak sądzisz, co stanowi bazę informatyki? Od czego powinien zacząć przyszły programista? Może od opanowania jednego z najpopularniejszych języków programowania? Oczywiście mógłby od tego rozpocząć, tyle że to trochę tak, jakby uczyć się korzystać z narzędzia bez świadomości, do czego ono właściwi...
Informacja i kodowanie. Krótkie wprowadzenie z przykładami zastosowań Informacja i kodowanie. Krótkie wprowadzenie z przykładami zastosowań
(47.20 zł najniższa cena z 30 dni)41.30 zł
59.00 zł(-30%) -
Książkę szczególnie docenią analitycy bezpieczeństwa, którzy chcą się zapoznać z zestawem poleceń ARM i zdobyć wiedzę umożliwiającą im efektywne korzystanie z technik inżynierii wstecznej. Poza zestawem potrzebnych poleceń znalazło się w niej mnóstwo przydatnych informacji. Znajdziesz tu przegląd...
Niebieski lis. Polecenia procesorów Arm i inżynieria wsteczna Niebieski lis. Polecenia procesorów Arm i inżynieria wsteczna
(57.84 zł najniższa cena z 30 dni)62.30 zł
89.00 zł(-30%) -
Ewolucja formularzy internetowych zaczęła się od prostych znaczników języka HTML 2.0 opublikowanego w 1993 roku. Z czasem HTML oferował bardziej zaawansowane funkcje obsługi formularzy. Późniejsze wersje, HTML4, a następnie HTML5, wprowadziły nowe typy pól, takie jak pola daty, koloru czy też adr...
Angular i formularze reaktywne. Praktyczny przewodnik Angular i formularze reaktywne. Praktyczny przewodnik
(44.85 zł najniższa cena z 30 dni)48.30 zł
69.00 zł(-30%) -
Jeśli w swojej pracy masz lub miewasz do czynienia z danymi, z pewnością orientujesz się, że do tego celu stworzono dotąd całkiem sporo narzędzi. Nic dziwnego – przy tej liczbie danych, z jaką spotykamy się w dzisiejszym cyfrowym świecie, zdolność do ich sprawnego analizowania i wyciągania ...
Grafana. Kurs video. Monitorowanie, analiza i wizualizacja danych w czasie rzeczywistym Grafana. Kurs video. Monitorowanie, analiza i wizualizacja danych w czasie rzeczywistym
(39.90 zł najniższa cena z 30 dni)39.90 zł
139.00 zł(-71%) -
Tę książkę docenią praktycy: inżynierowie uczenia maszynowego i analitycy danych, poszukujący sposobu praktycznego zaadaptowania modeli transformacyjnych do swoich potrzeb. Autorzy skupili się na praktycznej stronie tworzenia aplikacji językowych, a w poszczególnych rozdziałach ujęto wszystkie na...
Przetwarzanie języka naturalnego z wykorzystaniem transformerów. Budowanie aplikacji językowych za pomocą bibliotek Hugging Face Przetwarzanie języka naturalnego z wykorzystaniem transformerów. Budowanie aplikacji językowych za pomocą bibliotek Hugging Face
(59.40 zł najniższa cena z 30 dni)69.30 zł
99.00 zł(-30%) -
Ta książka pomoże Ci się przygotować do pracy na stanowisku testera oprogramowania, a także zapewni wsparcie podczas wykonywania nowych zadań. Znajdziesz tu dokładne omówienie podstaw testowania, jego różnych rodzajów i poziomów w odniesieniu do zastosowania na różnych etapach pracy nad projektem...
Tester samouk. Praktyczny przewodnik po testowaniu oprogramowania na bazie gotowego projektu Tester samouk. Praktyczny przewodnik po testowaniu oprogramowania na bazie gotowego projektu
(35.40 zł najniższa cena z 30 dni)41.30 zł
59.00 zł(-30%) -
Czym jest inżynieria wymagań? To systematyczne podejście do pozyskiwania i dokumentowania wymagań, a także zarządzania nimi. Polega na zrozumieniu potrzeb i oczekiwań interesariuszy, a następnie opisaniu, za pomocą wymagań, systemu, który je spełnia.
Certyfikowany inżynier wymagań. Na podstawie IREB CPRE. Poziom podstawowy Certyfikowany inżynier wymagań. Na podstawie IREB CPRE. Poziom podstawowy
(41.40 zł najniższa cena z 30 dni)48.30 zł
69.00 zł(-30%) -
Firmy z branży IT prześcigają się w tworzeniu rozwiązań zwiększających wydajność pracy, jak również podnoszących poziom specjalizacji pracowników w określonych dziedzinach. Od kilku już lat pozycja full stack developera, który wykonywał wszystkie prace programistyczne, jest wielką rzadkością. Obe...
Postman i SQL. Kurs video. Metody testowania REST API i przeszukiwania baz danych Postman i SQL. Kurs video. Metody testowania REST API i przeszukiwania baz danych
(39.90 zł najniższa cena z 30 dni)63.60 zł
159.00 zł(-60%) -
To drugie, zaktualizowane wydanie przewodnika po systemie Prometheus. Znajdziesz w nim wyczerpujące wprowadzenie do tego oprogramowania, a także wskazówki dotyczące monitorowania aplikacji i infrastruktury, tworzenia wykresów, przekazywania ostrzeżeń, bezpośredniej instrumentacji kodu i pobierani...
Prometheus w pełnej gotowości. Jak monitorować pracę infrastruktury i wydajność działania aplikacji. Wydanie II Prometheus w pełnej gotowości. Jak monitorować pracę infrastruktury i wydajność działania aplikacji. Wydanie II
(53.40 zł najniższa cena z 30 dni)62.30 zł
89.00 zł(-30%) -
Czy wiesz, że większość ruchu w sieci pochodzi z urządzeń mobilnych? Smartfon stał się wiodącym urządzeniem do przeglądania Internetu i nadal przybiera na sile. Dzięki tej popularności dynamicznie rozwija się także rynek aplikacji mobilnych. W sklepach takich jak App Store i Google Play mamy do w...
iOS Developer. Kurs video. Opanuj Swift, framework UIKit i środowisko Xcode iOS Developer. Kurs video. Opanuj Swift, framework UIKit i środowisko Xcode
(39.90 zł najniższa cena z 30 dni)58.04 zł
129.00 zł(-55%)
O autorze ebooka
Vladimir Khorikov - jest inżynierem oprogramowania od ponad 15 lat. Zdobył tytuł Microsoft Most Valuable Professional. Jest ekspertem w zakresie testowania jednostkowego. W ciągu ostatnich kilku lat opublikował kilka popularnych serii wpisów o testowaniu jednostkowym na różnych blogach, a także prowadził internetowe kursy na ten temat. Jest ceniony za bogatą wiedzę teoretyczną, którą potrafi znakomicie wyjaśnić i zastosować w praktyce.
Ebooka "Testy jednostkowe. Zasady, praktyki i wzorce" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Testy jednostkowe. Zasady, praktyki i wzorce" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Testy jednostkowe. Zasady, praktyki i wzorce" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- Tytuł oryginału:
- Unit Testing Principles, Practices, and Patterns
- Tłumaczenie:
- Katarzyna Bogusławska
- ISBN Książki drukowanej:
- 978-83-283-6871-2, 9788328368712
- Data wydania książki drukowanej:
- 2020-10-26
- ISBN Ebooka:
- 978-83-283-6872-9, 9788328368729
- Data wydania ebooka:
- 2020-10-26 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Format:
- 168x237
- Numer z katalogu:
- 119405
- druk na żądanie!
- dnż
- Rozmiar pliku Pdf:
- 5.1MB
- Rozmiar pliku ePub:
- 5.2MB
- Rozmiar pliku Mobi:
- 11.6MB
- Pobierz przykładowy rozdział PDF
- Przykłady na ftp
Ebook zawiera materiały dodatkowe, które możesz pobrać z serwera FTP - link znajdziesz na stronie redakcyjnej.
Spis treści ebooka
- 1.1. Obecna kondycja testowania jednostkowego 20
- 1.2. Cel testowania jednostkowego 21
- 1.2.1. Co czyni test dobrym? 23
- 1.3. Stosowanie wskaźników pokrycia do mierzenia jakości zestawu testowego 24
- 1.3.1. Interpretacja wskaźnika pokrycia kodu 25
- 1.3.2. Interpretacja wskaźnika pokrycia gałęzi 26
- 1.3.3. Problemy z pokryciem gałęzi 27
- 1.3.4. Wymaganie procentowej wartości pokrycia 30
- 1.4. Właściwości dobrego zestawu testowego 31
- 1.4.1. Integracja z cyklem wytwarzania oprogramowania 31
- 1.4.2. Koncentracja na najważniejszych częściach kodu 31
- 1.4.3. Maksymalna wartość przy minimalnych kosztach 32
- 1.5. Czego nauczysz się z tej książki 33
- Podsumowanie 34
- 2.1. Definicja testu jednostkowego 38
- 2.1.1. Izolacja - podejście londyńskie 38
- 2.1.2. Izolacja - podejście klasyczne 44
- 2.2. Klasyczna i londyńska szkoła testów jednostkowych 47
- 2.2.1. Obsługa zależności według szkoły londyńskiej i klasycznej 47
- 2.3. Zestawienie podejść - klasycznej i londyńskiej szkoły testowania jednostkowego 51
- 2.3.1. Testowanie jednostkowe jednej klasy na raz 51
- 2.3.2. Testowanie jednostkowe dużej mapy wzajemnie łączących się klas 52
- 2.3.3. Dokładne wskazywanie źródła błędów 52
- 2.3.4. Inne różnice między podejściem klasycznym a londyńskim 53
- 2.4. Testy integracyjne według dwóch szkół 54
- 2.4.1. Testy systemowe to podzbiór testów integracyjnych 55
- Podsumowanie 57
- 3.1. Struktura testu jednostkowego 60
- 3.1.1. Zastosowanie wzorca AAA 60
- 3.1.2. Unikanie wielokrotnych sekcji przygotuj, zrób, sprawdź 61
- 3.1.3. Unikanie warunków w testach 62
- 3.1.4. Optymalna wielkość sekcji 63
- 3.1.5. Liczba weryfikacji w sekcji asercji 65
- 3.1.6. Sekwencja końcowa 65
- 3.1.7. Zróżnicowanie systemu poddawanego testom 65
- 3.1.8. Usunięcie komentarzy na temat sekcji z testów 66
- 3.2. Omówienie biblioteki testowej xUnit 67
- 3.3. Wielokrotne wykorzystanie jarzma testowego 68
- 3.3.1. Silne wiązania między testami - antywzorzec 69
- 3.3.2. Użycie konstruktora zmniejsza czytelność 70
- 3.3.3. Lepszy sposób wielokrotnego wykorzystania jarzma testowego 70
- 3.4. Nazewnictwo testów jednostkowych 72
- 3.4.1. Nazewnictwo testów jednostkowych - wytyczne 74
- 3.4.2. Przykład: zmiana nazwy testu zgodnie z wytycznymi 74
- 3.5. Zamiana na testy parametryzowane 76
- 3.5.1. Generowanie danych dla testów parametryzowanych 78
- 3.6. Biblioteka asercji i dalsze poprawianie czytelności testów 80
- Podsumowanie 81
- 4.1. Cztery filary dobrego testu jednostkowego 86
- 4.1.1. Filar pierwszy: ochrona przed regresją 86
- 4.1.2. Filar drugi: odporność na zmiany 87
- 4.1.3. Co powoduje wyniki obarczone błędem pierwszego rodzaju 89
- 4.1.4. Skup się na końcowym wyniku, a nie szczegółach implementacyjnych 92
- 4.2. Nierozerwalny związek między pierwszą a drugą cechą 94
- 4.2.1. Zwiększanie dokładności testów 94
- 4.2.2. Waga wyników fałszywie dodatnich i fałszywie ujemnych - dynamika 96
- 4.3. Filary trzeci i czwarty: szybka informacja zwrotna i utrzymywalność 97
- 4.4. W poszukiwaniu idealnego testu 98
- 4.4.1. Czy możliwe jest stworzenie idealnego testu 99
- 4.4.2. Przypadek skrajny nr 1: test systemowy 99
- 4.4.3. Przypadek skrajny nr 2: testy trywialne 100
- 4.4.4. Przypadek skrajny nr 3: niestabilne testy 101
- 4.4.5. W poszukiwaniu idealnego testu - wyniki 102
- 4.5. Omówienie dobrze znanych pojęć z zakresu testów automatycznych 105
- 4.5.1. Poziomy piramidy testów 105
- 4.5.2. Wybór między testowaniem czarno- i białoskrzynkowym 107
- Podsumowanie 108
- 5.1. Rozróżnienie między atrapami a zaślepkami 112
- 5.1.1. Rodzaje dublerów testowych 112
- 5.1.2. Atrapa (narzędzie) kontra atrapa (dubler testowy) 113
- 5.1.3. Nie poddawaj asercjom interakcji z zaślepkami 114
- 5.1.4. Używanie atrap i zaślepek razem 116
- 5.1.5. Związek atrap i zaślepek z poleceniami i zapytaniami 116
- 5.2. Zachowanie dające się zaobserwować a szczegóły implementacyjne 117
- 5.2.1. Dające się zaobserwować zachowanie to nie publiczny interfejs API 118
- 5.2.2. Wyciekające szczegóły implementacyjne - przykład z operacją 119
- 5.2.3. Dobrze zaprojektowany interfejs API i enkapsulacja 122
- 5.2.4. Wyciekające szczegóły implementacyjne - przykład ze stanem 123
- 5.3. Związek między atrapami a niestabilnością testów 125
- 5.3.1. Architektura heksagonalna 125
- 5.3.2. Komunikacja wewnątrzsystemowa i międzysystemowa 129
- 5.3.3. Komunikacja wewnątrzsystemowa i międzysystemowa - przykład 130
- 5.4. Klasyczna i londyńska szkoła testowania jednostkowego - raz jeszcze 133
- 5.4.1. Nie wszystkie zewnętrzne zależności należy zastępować atrapami 133
- 5.4.2. Wykorzystanie atrap do weryfikowania zachowania 135
- Podsumowanie 135
- 6.1. Trzy style testowania jednostkowego 140
- 6.1.1. Styl oparty na rezultatach - definicja 140
- 6.1.2. Styl oparty na stanach - definicja 141
- 6.1.3. Styl oparty na komunikacji - definicja 142
- 6.2. Trzy style testowania jednostkowego - porównanie 143
- 6.2.1. Porównanie stylów pod względem ochrony przed regresją i szybkości informacji zwrotnej 144
- 6.2.2. Porównanie stylów pod względem odporności na zmiany 144
- 6.2.3. Porównanie stylów pod względem utrzymywalności 145
- 6.2.4. Porównanie stylów - wyniki 147
- 6.3. Architektura funkcyjna 148
- 6.3.1. Czym jest programowanie funkcyjne? 148
- 6.3.2. Czym jest architektura funkcyjna? 151
- 6.3.3. Porównanie architektury funkcyjnej i heksagonalnej 153
- 6.4. Przejście do architektury funkcyjnej i testowania opartego na rezultatach 154
- 6.4.1. System audytowania - wprowadzenie 154
- 6.4.2. Wykorzystanie atrap w celu oddzielenia testu od systemu plików 157
- 6.4.3. Przejście do architektury funkcyjnej 160
- 6.4.4. Potencjalne dalsze kroki 164
- 6.5. Wady architektury funkcyjnej 165
- 6.5.1. Zasadność stosowania architektury funkcyjnej 165
- 6.5.2. Wady pod względem wydajności 167
- 6.5.3. Wady pod względem rozmiaru bazy kodu 167
- Podsumowanie 168
- 7.1. Określenie kodu podlegającego refaktoryzacji 172
- 7.1.1. Cztery typy kodu 172
- 7.1.2. Wykorzystanie wzorca Skromny Obiekt do podziału przeszacowanego kodu 175
- 7.2. Zmiany ku bardziej wartościowym testom 178
- 7.2.1. System zarządzania kontaktami z klientami - wprowadzenie 178
- 7.2.2. Próba nr 1: ujawnienie zależności 180
- 7.2.3. Próba nr 2: wprowadzenie warstwy usług aplikacji 180
- 7.2.4. Próba nr 3: usunięcie złożoności z usługi aplikacji 182
- 7.2.5. Próba nr 4: wprowadzenie nowej klasy Company 184
- 7.3. Analiza optymalnego pokrycia testami jednostkowymi 186
- 7.3.1. Testowanie warstwy domeny i kodu pomocniczego 187
- 7.3.2. Testowanie kodu z pozostałych części diagramu 188
- 7.3.3. Czy powinno się testować warunki wstępne? 188
- 7.4. Obsługa logiki warunkowej w kontrolerach 189
- 7.4.1. Wykorzystanie wzorca Polecenie 191
- 7.4.2. Wykorzystanie zdarzeń domeny do śledzenia zmian w modelu domeny 194
- 7.5. Wnioski 197
- Podsumowanie 199
- 8.1. Test integracyjny - definicja 206
- 8.1.1. Rola testów integracyjnych 206
- 8.1.2. Piramida testów - jeszcze raz 207
- 8.1.3. Testy integracyjne kontra szybka reakcja 208
- 8.2. Które zewnętrzne zależności testować bezpośrednio 209
- 8.2.1. Dwa typy zależności poza kontrolą procesu 210
- 8.2.2. Obsługa zarządzanych i niezarządzanych zależności 211
- 8.2.3. Co, jeśli nie możesz wykorzystać prawdziwej bazy danych w testach integracyjnych? 212
- 8.3. Testy integracyjne - przykład 213
- 8.3.1. Jakie scenariusze przetestować? 214
- 8.3.2. Klasyfikacja bazy danych i szyny danych 214
- 8.3.3. Co z testami systemowymi? 215
- 8.3.4. Test integracyjny - próba pierwsza 216
- 8.4. Stosowanie interfejsów do abstrakcji zależności 217
- 8.4.1. Interfejsy i luźne wiązania 217
- 8.4.2. Po co używać interfejsów dla zewnętrznych zależności? 218
- 8.4.3. Stosowanie interfejsów dla wewnętrznych zależności 219
- 8.5. Najlepsze praktyki testów integracyjnych 220
- 8.5.1. Jasno oznacz granice modelu domeny 220
- 8.5.2. Zmniejszaj liczbę warstw 220
- 8.5.3. Usuwaj zapętlone zależności 222
- 8.5.4. Użycie wielu sekcji działania w teście 224
- 8.6. Jak testować zapisywanie logów 225
- 8.6.1. Czy w ogóle powinno się testować pisanie logów 225
- 8.6.2. Jak testować pisanie logów 226
- 8.6.3. Ile logowania wystarczy 231
- 8.6.4. Jak przekazywać instancje mechanizmu logowania 232
- 8.7. Wnioski 233
- Podsumowanie 233
- 9.1. Maksymalizowanie wartości atrap 237
- 9.1.1. Weryfikacja interakcji na obrzeżach systemu 240
- 9.1.2. Zastępowanie atrap agentami 243
- 9.1.3. Co z interfejsem IDomainLogger 245
- 9.2. Najlepsze praktyki modelowania za pomocą atrap 246
- 9.2.1. Atrapy służą tylko do testów integracyjnych 246
- 9.2.2. Wiele atrap w jednym teście 246
- 9.2.3. Weryfikacja liczby żądań 247
- 9.2.4. Modeluj tylko typy, które sam utworzyłeś 247
- Podsumowanie 248
- 10.1. Warunki umożliwiające testowanie bazy danych 252
- 10.1.1. Przechowywanie bazy danych w systemie kontroli wersji 252
- 10.1.2. Dane referencyjne to część schematu bazy danych 253
- 10.1.3. Oddzielne instancje dla każdego programisty 254
- 10.1.4. Stanowe i migracyjne podejście do dostarczania bazy danych 254
- 10.2. Zarządzanie transakcjami w bazie danych 256
- 10.2.1. Zarządzanie transakcjami w kodzie produkcyjnym 256
- 10.2.2. Zarządzanie transakcjami w testach integracyjnych 263
- 10.3. Cykl życia danych testowych 265
- 10.3.1. Równoległe i sekwencyjne wykonanie testów 265
- 10.3.2. Sprzątanie danych pomiędzy wykonaniami testów 266
- 10.3.3. Unikanie baz danych operujących w pamięci 267
- 10.4. Wielokrotne wykorzystanie kodu w sekcjach 268
- 10.4.1. Wielokrotne użycie kodu w sekcji przygotowań 268
- 10.4.2. Wielokrotne użycie kodu w sekcji działania 271
- 10.4.3. Wielokrotne użycie kodu w sekcji asercji 271
- 10.4.4. Czy test tworzy zbyt wiele transakcji do bazy danych 272
- 10.5. Często zadawane pytania na temat testowania baz danych 273
- 10.5.1. Czy testować operacje odczytu? 273
- 10.5.2. Czy testować repozytoria? 275
- 10.6. Wnioski 276
- Podsumowanie 276
- 11.1. Testowanie jednostkowe prywatnych metod 282
- 11.1.1. Metody prywatne i niestabilność testów 282
- 11.1.2. Metody prywatne i niedostateczne pokrycie 282
- 11.1.3. Kiedy testowanie metod prywatnych jest akceptowalne 283
- 11.2. Udostępnianie stanu prywatnego 285
- 11.3. Przenikanie wiedzy domenowej do testów 286
- 11.4. Zanieczyszczanie kodu 288
- 11.5. Modelowanie za pomocą atrap konkretnych klas 290
- 11.6. Praca z czasem 293
- 11.6.1. Czas jako kontekst środowiskowy 293
- 11.6.2. Czas jako jawna zależność 294
- 11.7. Wnioski 295
- Podsumowanie 295
Przedmowa 11
Podziękowania 12
O książce 13
O autorze 15
CZĘŚĆ I. SZEROKI HORYZONT 17
Rozdział 1. Cel testowania jednostkowego 19
Rozdział 2. Co to jest test jednostkowy? 37
Rozdział 3. Anatomia testu jednostkowego 59
CZĘŚĆ II. TESTY, KTÓRE PRACUJĄ DLA CIEBIE 83
Rozdział 4. Cztery filary dobrego testu jednostkowego 85
Rozdział 5. Atrapy i stabilność testów 111
Rozdział 6. Style testowania jednostkowego 139
Rozdział 7. Zmiany ku bardziej wartościowym testom jednostkowym 171
CZĘŚĆ III. TESTY INTEGRACYJNE 203
Rozdział 8. Po co testy integracyjne? 205
Rozdział 9. Najlepsze praktyki modelowania za pomocą atrap 237
Rozdział 10. Testowanie bazy danych 251
CZĘŚĆ IV. ANTYWZORCE TESTOWANIA JEDNOSTKOWEGO 279
Rozdział 11. Antywzorce testowania jednostkowego 281
Helion - inne książki
-
Oto zaktualizowane wydanie popularnego przewodnika, dzięki któremu skorzystasz z ponad dwustu sprawdzonych receptur bazujących na najnowszych wydaniach bibliotek Pythona. Wystarczy, że skopiujesz i dostosujesz kod do swoich potrzeb. Możesz też go uruchamiać i testować za pomocą przykładowego zbio...
Uczenie maszynowe w Pythonie. Receptury. Od przygotowania danych do deep learningu. Wydanie II Uczenie maszynowe w Pythonie. Receptury. Od przygotowania danych do deep learningu. Wydanie II
(57.84 zł najniższa cena z 30 dni)62.30 zł
89.00 zł(-30%) -
Dzięki tej przystępnej książce zrozumiesz metody działania wielkich modeli językowych i techniki szkolenia modeli generatywnych. Następnie zapoznasz się z przypadkami użycia, w których ChatGPT sprawdzi się najlepiej, a w efekcie zwiększy produktywność i kreatywność. Dowiesz się też, jak wchodzić ...
Generatywna sztuczna inteligencja z ChatGPT i modelami OpenAI. Podnieś swoją produktywność i innowacyjność za pomocą GPT3 i GPT4 Generatywna sztuczna inteligencja z ChatGPT i modelami OpenAI. Podnieś swoją produktywność i innowacyjność za pomocą GPT3 i GPT4
(51.35 zł najniższa cena z 30 dni)55.30 zł
79.00 zł(-30%) -
Ta książka jest przewodnikiem dla profesjonalistów do spraw cyberbezpieczeństwa. Przedstawia podstawowe zasady reagowania na incydenty bezpieczeństwa i szczegółowo, na przykładach, omawia proces tworzenia zdolności szybkiej i skutecznej reakcji na takie zdarzenia. Zaprezentowano tu techniki infor...
Informatyka śledcza. Narzędzia i techniki skutecznego reagowania na incydenty bezpieczeństwa. Wydanie III Informatyka śledcza. Narzędzia i techniki skutecznego reagowania na incydenty bezpieczeństwa. Wydanie III
(79.20 zł najniższa cena z 30 dni)69.30 zł
99.00 zł(-30%) -
Czy wiesz, co kryje się w centrum naszej Galaktyki? Czy zastanawiasz się czasem, jak powstają czarne dziury i co one oznaczają dla naszego zrozumienia wszechrzeczy? Czy chcesz poznać tajemnice tych niesamowitych obiektów, które wykraczają poza granice wyobraźni? Jeśli tak, to bestseller Czarne dz...(47.20 zł najniższa cena z 30 dni)
41.30 zł
59.00 zł(-30%) -
To piąte, gruntownie zaktualizowane wydanie podręcznika, który doceni każdy student informatyki i inżynier oprogramowania. Książka obejmuje szeroki zakres zagadnień, od podstawowych pojęć po zaawansowaną problematykę związaną z najnowszymi trendami w systemach operacyjnych. Wyczerpująco omawia pr...(143.20 zł najniższa cena z 30 dni)
125.30 zł
179.00 zł(-30%) -
Oto drugie, zaktualizowane wydanie znakomitego przewodnika dla analityków danych. Dzięki niemu dowiesz się, w jaki sposób używać języka R do importowania, przekształcania i wizualizowania danych, a także do przekazywania uzyskanych wyników analizy. Nauczysz się też rozwiązywać najczęściej występu...
Język R w data science. Importowanie, porządkowanie, przekształcanie, wizualizowanie i modelowanie danych. Wydanie II Język R w data science. Importowanie, porządkowanie, przekształcanie, wizualizowanie i modelowanie danych. Wydanie II
(103.20 zł najniższa cena z 30 dni)90.30 zł
129.00 zł(-30%) -
Bez Photoshopa, Illustratora i InDesigna wielu profesjonalnych grafików nie wyobraża sobie pracy. Każda z tych aplikacji jest znakomita, ale często do uzyskania jakiegoś spektakularnego efektu trzeba użyć dwóch lub trzech. Musisz więc zrozumieć zależności między tymi aplikacjami i dokładnie wiedz...
Adobe Photoshop, Illustrator i InDesign. Współdziałanie i przepływ pracy. Oficjalny podręcznik Adobe Photoshop, Illustrator i InDesign. Współdziałanie i przepływ pracy. Oficjalny podręcznik
(65.40 zł najniższa cena z 30 dni)76.30 zł
109.00 zł(-30%) -
ChatGPT wywołał wstrząs w branży technologicznej. Programiści i wynalazcy otrzymali niesamowite możliwości dostępne na wyciągnięcie ręki. Interfejs API OpenAI i towarzyszące mu biblioteki stanowią gotowe rozwiązanie dla każdego twórcy aplikacji opartych na sztucznej inteligencji. Programista za p...
Tworzenie aplikacji z wykorzystaniem GPT-4 i ChatGPT. Buduj inteligentne chatboty, generatory treści i fascynujące projekty Tworzenie aplikacji z wykorzystaniem GPT-4 i ChatGPT. Buduj inteligentne chatboty, generatory treści i fascynujące projekty
(35.40 zł najniższa cena z 30 dni)41.30 zł
59.00 zł(-30%) -
Książka stanowi zbiór praktycznych informacji dotyczących najpopularniejszych wzorców projektowych. Lekturę rozpoczniesz od zapoznania się z możliwościami korzystania z wzorców projektowych na platformie Javy. Dowiesz się także, jakich zasad trzeba przestrzegać, aby zapewnić czytelność i łatwość ...
Wzorce projektowe dla programistów Javy. Udoskonal swoje umiejętności projektowania oprogramowania Wzorce projektowe dla programistów Javy. Udoskonal swoje umiejętności projektowania oprogramowania
(40.20 zł najniższa cena z 30 dni)46.90 zł
67.00 zł(-30%) -
Dzięki tej książce nauczysz się gromadzić publicznie dostępne informacje, korzystać z wiedzy o cyklu życia wrażliwych danych i przekształcać je w informacje wywiadowcze przydatne dla zespołów zajmujących się bezpieczeństwem. Opanujesz proces gromadzenia i analizy danych, poznasz również strategie...
Prawdziwa głębia OSINT. Odkryj wartość danych Open Source Intelligence Prawdziwa głębia OSINT. Odkryj wartość danych Open Source Intelligence
(59.40 zł najniższa cena z 30 dni)69.30 zł
99.00 zł(-30%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka drukowana
Oceny i opinie klientów: Testy jednostkowe. Zasady, praktyki i wzorce Vladimir Khorikov (0) Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.