testy integracyjne

Jak testować integracyjne aplikację zabezpieczoną tokenem JWT?

W kolejnej części kursu pokazuję jak przetestować integracyjnie aplikację zabezpieczoną Jason Web Tokenem. Pokazuję jak przetestować usługi korzystając z mockowego usera i jak przetestować logowanie korzystając z tokena w testach.

Testy integracyjne to testy, które pozwalają przetestować poszczególne funkcjonalności, w działającej aplikacji. Aplikacja jest odpalana w teście wraz ze wszystkimi potrzebnymi komponentami. Aplikacja w testach integracyjnych łączy się z bazą danych, co umożliwia całościowe przetestowanie funkcjonalności.

W Springu testy integracyjne działają w ten sposób, że w testach uruchamiany jest kontekst, ale nie jest uruchamiany serwer Tomcat i żeby przetestować funkcjonalności w testach integracyjnych musimy skorzystać z narzędzia MockMvc. Narzędzie to pozwala łączyć się z endpointami wystawionymi przez aplikację tak jakby to była aplikacja działająca na serwerze.

I w tej części kursu pokazuję krok po kroku jak pisać testy integracyjne dla aplikacji, która jest zabezpieczona tokenem JWT, korzystając z MockMvc. Ale także pokazuję jak przetestować logowanie i wywoływanie usług z użyciem tokena JWT.

W tej części znajdziesz:

  • Co robi adnotacja @SpringBootTest?
  • Konfiguracja testów integracyjnych w Spring Boot
  • Tworzenie i konfiguracja osobnej bazy danych dla testów integracyjnych
  • Co to jest MockMvc?
  • Pierwsze wywołanie z MockMvc
  • Konfiguracja testów z adnotacją @WithMockUser
  • Konwersja odpowiedzi z testowanej metody na model
  • Jak powinien wyglądać prawidłowy setup testu integracyjnego?
  • Jak nie zaśmiecać bazy danych testami integracyjnymi
  • Testowanie Logowania do aplikacji
  • Testowanie wywoływania metod z tokenem JWT

 

Powiązane artykuły:

Spring Security

Json Web Token

 

Github projektu:
https://github.com/matdabrowski/SpringBootTutorialYoutube

 

Mateusz Dąbrowski

Cześć jestem Mateusz, zajmuję się programowaniem już ponad 12 lat z czego ponad 8 programuję w Javie. Zapraszam Cię do lektury mojego bloga. Możesz przeczytać więcej o mnie >>TUTAJ<<