Testowanie kodu z React Testing Library. Jak tworzy - Helion
Tytuł oryginału: Simplify Testing with React Testing Library: Create maintainable tests using RTL that do not break with changes
TÅ‚umaczenie: Katarzyna Bogus
ISBN: 978-83-283-8873-4
stron: 192, Format: ebook
Księgarnia: Helion
Cena książki: 59,00 zł
Książka będzie dostępna od października 2022
W ostatnich latach zdecydowanie wzros
Zobacz także:
- React z AI. Kurs video. Programowanie wspomagane sztuczn 119,00 zł, (47,60 zł -60%)
- React i GatsbyJS. Kurs video. Nowoczesne strony internetowe w oparciu o headless CMS i GraphQL 148,98 zł, (59,59 zł -60%)
- TypeScript i React. Kurs video. Tworzenie nowoczesnych komponent 129,00 zł, (51,60 zł -60%)
- Testowanie aplikacji w React.js. Kurs video. Praca z biblioteką Jest.js 69,00 zł, (27,60 zł -60%)
- React Redux. Kurs video. Praktyczny przewodnik 129,00 zł, (58,05 zł -55%)
Spis treści
Testowanie kodu z React Testing Library. Jak tworzyć testy, które będą proste w utrzymaniu i modyfikacji eBook -- 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