spis treści
O autorze
O recenzencie
Przedmowa
Rozdział 1. Wstęp do React Testing Library
Wymagania techniczne
Wprowadzenie do DOM Testing Library
Czym jest DOM Testing Library
Główne zasady
Uruchamianie przypadków testowych z Jest
Uruchamianie testów z Jest
Rozbudowanie asercji Jest dzięki jest-dom
Dodawanie jest-dom do projektu
Zalety stosowania jest-dom z Jest
Szczegóły implementacyjne w testach
Problemy z testami koncentrującymi się na szczegółach implementacyjnych
Przykład testu szczegółów implementacyjnych
Czym zastąpić testowanie szczegółów implementacyjnych
Podsumowanie
Pytania
Rozdział 2. Praca z React Testing Library
Wymagania techniczne
Dodawanie React Testing Library od istniejących projektów
Ręczna instalacja
Automatyczna instalacja z create-react-app
Nadawanie testom struktury z React Testing Library
Renderowanie elementów
Wybieranie elementów
Asercje dotyczące oczekiwanego zachowania
Testowanie komponentów warstwy prezentacji
Tworzenie testów migawek
Testowanie oczekiwanych właściwości
Zastosowanie metody debug
Debugowanie całego komponentu DOM
Debugowanie konkretnych elementów komponentu
Podsumowanie
Pytania
Rozdział 3. Testowanie złożonych komponentów przy użyciu React Testing Library
Wymagania techniczne
Testowanie zdarzeń użytkowników
Symulowanie akcji użytkownika za pomocą fireEvent
Symulowanie działań użytkownika z user-event
Testowanie komponentów wywołujących procedury obsługi zdarzeń w izolacji
Testowanie komponentów, które współpracują z interfejsami API
Żądanie danych z API poprzez fetch
Tworzenie atrap danych API z MSW
Testowanie komponentu DrinkSearch
Zastosowanie MSW w budowaniu oprogramowania
Implementacja programowania sterowanego testami
Budowanie komponentu Vote z wykorzystaniem TDD
Budowanie formularza rejestracji z wykorzystaniem TDD
Podsumowanie
Pytania
Rozdział 4. Testy integracyjne i zewnętrzne biblioteki w Twojej aplikacji
Wymagania techniczne
Testowanie zintegrowanych komponentów
Testy integracyjne komponentu Vote
Planowanie scenariuszy testowych do testów w izolacji
Testowanie komponentów z Context API
Testowanie kontekstu korzystającego z komponentu Retail
Testowanie komponentu Cart w izolacji
Testowanie komponentu Product w izolacji
Testowanie komponentu ProductDetail w izolacji
Testowanie błędów kontekstu z wykorzystaniem granic
Wykorzystanie testów integracyjnych do testowania widoku szczegółów produktu
Testowanie komponentów wykorzystujących Redux
Tworzenie specjalnej metody render do testowania komponentów w Redux
Zastosowanie Redux Provider w testach
Testowanie komponentów wykorzystujących GraphQL
Testowanie komponentów zbudowanych przy użyciu Material-UI
Dodanie etykiety ARIA w testach komponentu Vote
Dodawanie testID do testowego komponentu CustomerTable
Podsumowanie
Pytania
Rozdział 5. Refaktoryzacja starych aplikacji z React Testing Library
Wymagania techniczne
Korzystanie z testów do wykrywania regresji przy aktualizacji zależności
Stworzenie zestawu testów regresyjnych
Aktualizacja zależności Material-UI
Refaktoryzacja testów napisanych z wykorzystaniem Enzyme
Refaktoryzacja testów wykorzystujących ReactTestUtils
Refaktoryzacja testów pod kątem zgodności z dobrymi praktykami testowania
Podsumowanie
Pytania
Rozdział 6. Implementacja dodatkowych narzędzi i rozszerzeń do testów
Wymagania techniczne
Implementowanie dobrych praktyk z rozszerzeniami ESLint
Instalacja i konfiguracja rozszerzenia eslint-plugin-testing-library
Instalacja i konfiguracja eslint-plugin-jest-dom
Testowanie dostępności z jest-axe
Dobór zapytań z Testing Playground
Dobór zapytań z wykorzystaniem strony internetowej Testing Playground
Dobór zapytań z wykorzystaniem rozszerzenia Testing Playground do przeglądarki Chrome
Zwiększanie produktywności z Wallaby.js
Instalacja i konfiguracja Wallaby.js
Pisanie testów z Interactive Test Output
Podsumowanie
Pytania
Rozdział 7. Testy end-to-end z Cypress
Wymagania techniczne
Wprowadzenie do Cypress
Rozszerzenie metod zapytań z Cypress Testing Library
Programowanie sterowane narzędziem Cypress
Pisanie testów z wykorzystaniem wzorców projektowych w Cypress
Tworzenie obiektowych modeli stron w Cypress
Tworzenie specjalnych metod w Cypress
Testowanie API z Cypress
Testy w stylu Gherkin z Cucumber
Korzystanie z React Developer Tools z Cypress
Podsumowanie
Pytania
Odpowiedzi
Opinie
Na razie nie ma opinii o produkcie.