Warsztaty Java i Selenium WebDriver

Termin

  • Już wkrótce

Miejsce

  • Trójmiasto
  • Chcesz warsztaty w swoim mieście? Zapytaj!

Cena za 2 dni warsztatów

  • Cena specjalna - 599 zł *
  • Cena normalna - 699 zł

* Zapytaj o kod rabatowy

Prowadzący

  • Rafał Borowiec
  • Maciej Chmielarz

Dla kogo?

Warsztat jest adresowany do osób chcących poznać praktyczne zastosowanie technologii Java, JUnit 5 i Selenium WebDriver do automatyzacji nowoczesnych aplikacji internetowych. Jeżeli posiadasz doświadczenie w manualnym testowaniu aplikacji internetowych, znasz podstawy programowania i chcesz zacząć automatyzować takie testy, to ten warsztat jest dla Ciebie.

Co zyskasz?

  • Poznasz możliwości frameworku JUnit 5 połączonego z Selenium WebDriver
  • Poznasz narzędzia do automatyzacji budowania Gradle i kontroli wersji Git
  • Poznasz techniki tworzenia testów automatycznych z wykorzystaniem przeglądarki internetowej (narzędzi programistycznych)
  • Poznasz środowisko programistyczne IntelliJ, w tym debugger oraz JShell
  • Poznasz sposób na lepszą organizację testów z wykorzystaniem wzorca Page Object
  • Wykorzystasz zdobytą wiedzę w automatyzacji testów rzeczywistej aplikacji internetowej

Czego oczekujemy od Ciebie?

  • Doświadczenia w manualnym testowaniu aplikacji internetowych
  • Znajomości podstaw programowania

Organizacja warsztatu

  • 2 pełne dni warsztatowe - 16h
  • Wsparcie przed warsztatem, w trakcie jego trwania oraz tydzień po jego zakończeniu
  • Warsztatowa grupa Slack
  • Warsztat realizowany w formule “przynieś własny sprzęt” (ang. Bring Your Own Device, BYOD)
  • Przygotowanie środowiska do pracy jeszcze przed warsztatami

Uczestnicy o warsztatach

Sebastian

Warsztaty bardzo mi się podobały, mnóstwo informacji, do których samemu ciężko dotrzeć. Poruszane tematy i ćwiczenia wymagały zaangażowania uczestników, dla całkiem "zielonych” automatyzatorów mogły być w pewnym momencie zbyt zaawansowane, ale ja to traktuję jako plus, bo motywowało mnie to do doczytania i powtórzenia w domu. Szczególnie cenny był bezpośredni kontakt z prowadzącymi, żadne pytanie nie zostało bez odpowiedzi, czy to w trakcie, czy po zajęciach. Ja dzięki warsztatom w QA Labs czuję się pewniej w pracy z Selenium na co dzień. Zdecydowanie polecam wszystkim, których interesuje temat i chcą zdobyć więcej praktycznej wiedzy.

Kasia

Profesjonaliści w każdym calu - tak najkrócej można podsumować warsztat, w którym dane mi było uczestniczyć. Rafał i Maciej są świetnymi nauczycielami, praktykami o ogromnej wiedzy, którą potrafią przekazać w usystematyzowany i konkretny sposób. Wiedzą jak krok po kroku poprowadzić przez skomplikowane tematy i nie boją się trudnych pytań. Jeśli chcecie zacząć swoją przygodę z automatyzacją testów w języku Java lub potrzebujecie uporządkowania wiedzy w tym zakresie, to te warsztaty nadają się do tego idealnie. Pomogą zrozumieć trudniejsze aspekty programowania obiektowego i wskażą kierunki dalszej nauki. Szczerze polecam!

Marek

Jestem bardzo zadowolony z kursu przeprowadzonego przez QA Labs. Były to dwudniowe warsztaty Java i Selenium WebDriver. Rafał i Maciej mają dużą wiedzę, duże doświadczenie i umiejętnie łączą to umiejętnościami komunikacyjnymi, przez co szkolenie zyskuje na wartości. Bardzo dobre materiały przygotowujące do szkolenia, jak i wsparcie prowadzących podczas samego kursu. Dla mnie świetna relacja: ilości zainwestowanego przeze mnie czasu do zdobytej wiedzy i do ceny kursu.

Omawiane technologie

Selenium WebDriver

Selenium to zbiór narzędzi i bibliotek wspierających automatyzację przeglądarek internetowych. Dostarcza podstawy do implementacji specyfikacji W3C WebDriver (https://www.w3.org/TR/webdriver/). Automatyzacja przeglądarek jest możliwa dzięki WebDriver API, który jest protokołem definiującym interfejs do ich kontrolowania.

Selenium od wielu lat pozostaje liderem na rynku automatyzacji aplikacji internetowych, niezależnie od technologii, w której tworzone są testy automatyczne.

Java

Java to nowoczesny, zorientowany obiektowo język programowania, szeroko wykorzystywany przy tworzeniu komercyjnego oprogramowania o różnym stopniu złożoności. Ma zastosowanie również w automatyzacji testów, do uruchamiania scenariuszy testowych, kontrolowania testowanego oprogramowania oraz weryfikacji wyników jego działania.

JUnit 5

JUnit 5 to nowej generacji framework do tworzenia automatycznych testów jednostkowych w technologii Java oferujący wiele ciekawych funkcjonalności takich jak np. wstrzykiwanie zależności, parametryzowanie testów, czy w końcu nowe API umożliwiające łatwiejsze niż kiedykolwiek rozszerzanie możliwości frameworka i dostosowanie go do potrzeb projektowych.

Szczegółowy program warsztatu

Przed warsztatem

Przed zajęciami otrzymasz informacje i linki, które pomogą Ci w przygotowaniu się do warsztatów. Dowiesz się dzięki nim na jakie zagadnienia powinieneś zwrócić uwagę, być może poświęcając nieco czasu na ich lepsze poznanie. Wychodzimy z taką inicjatywą dlatego, że im bardziej wyrównany będzie poziom uczestników, tym bardziej efektywna będzie nauka.

W ramach tych informacji otrzymasz:

  • Dostęp do materiałów przygotowujących do warsztatów, specjalnie wyselekcjonowanych przez prowadzących pod kątem omawianych zagadnień.
  • Instrukcje krok po kroku, pomagające w skonfigurowaniu środowiska do pracy

Warsztat będzie realizowany w formule BYOD. Zalecane wymagania dla Twojego urządzenia to:

  • System operacyjny Windows 10 64-bit.
  • Minimum 4GB RAM
  • Karta sieciowa WiFi

Dzień 1

W trakcie pierwszego dnia utworzysz projekt w oparciu o Git, Gradle, JUnit 5, Selenium WebDriver i IntelliJ. Poznasz również Selenium WebDriver API (w tym kluczowe funkcjonalności, takie jak lokalizowanie elementów, wymuszanie oczekiwania na zmiany w DOM czy obsługę zaawansowanych gestów użytkownika).

Szczegółowy plan:

  • Uruchomienie i sprawdzenie przygotowanego wcześniej środowiska pracy
  • Utworzenie projektu:
    • Git
      • Utworzenie nowego repozytorium
      • Dodawanie plików, rejestrowanie zmian
      • Przeglądanie historii
      • Zdalne repozytoria
    • Gradle
      • Zadania dostępne w projekcie
      • Dodawanie zależności
      • Uruchamianie z wiersza poleceń
    • JUnit 5
      • Zależności JUnit 5
      • Tworzenie testów
      • Cykl życia testu i podstawowe metody rozszerzania funkcjonalności JUnit 5
      • Uruchamianie testów
      • Asercje
      • Logowanie (dziennik logów)
    • Selenium WebDriver
      • Zależności Selenium WebDriver
      • Inicjalizacja i podstawowa konfiguracja sterownika
      • Pierwsze testy z JUnit 5
  • Selenium WebDriver API
    • Konfigurowanie oraz właściwości sterownika
    • Wyszukiwanie oraz właściwości elementów
    • Interakcja z elementami na stronie
    • Podstawowa obsługa wyjątków
    • Oczekiwanie na zmiany w DOM
    • Wysyłanie i pobieranie plików
    • Obsługa zaawansowanych gestów użytkownika
    • Ciasteczka
    • Wykonywanie JavaScript w trakcie testu
    • HTML5
    • MultiTab, MultiWindows, iframe, alert
  • Narzędzia programistyczne w przeglądarce
    • Analiza właściwości DOM
    • Używanie konsoli JavaScript
  • IntelliJ
    • Integracja z Git
    • Integracja z Gradle
    • Uruchamianie i debugowanie testów

Dzień 2

W trakcie drugiego dnia warsztatów stworzysz kompletny projekt automatyzacji testów aplikacji internetowej opartej o architekturę SPA. Będziemy automatyzować pełne i realistyczne scenariusze testowe. Nauczysz się również, jak wykorzystać wzorzec Page Object w celu zapewnienia lepszej czytelności i łatwiejszego utrzymania testów.

Szczegółowy plan:

  • Podsumowanie pierwszego dnia zajęć, odpowiedzi na ewentualne pytania
  • Omówienie dostarczonych scenariuszy testowych i zapoznanie się z testowaną aplikacją
  • Pobranie szkieletu projektu z repozytorium Git
  • Konfiguracja sterownika z wykorzystaniem Extension API w JUnit 5
    • Utworzenie profili przeglądarek do użycia w testach
    • Automatyczne tworzenie zrzutów ekranowych w przypadku błędów
  • Konfiguracja projektu za pomocą zewnętrznych plików właściwości
  • Uruchamianie testów
    • Uruchamianie testów z wiersza poleceń
    • Uruchamianie testów w różnych przeglądarkach (Chrome, Firefox)
    • Raporty z przebiegu testów
  • Automatyzacja scenariuszy testowych
    • Wykorzystanie poznanych funkcji Selenium WebDriver
    • Tworzenie zaawansowanych selektorów CSS
    • Wyodrębnianie klas i metod pomocniczych, ograniczających duplikację kodu
    • Wykorzystanie wzorców Test Data Builder / Object Mother do organizacji danych testowych
    • Refaktoryzacja kodu w celu uzyskania lepszej struktury projektu
      • Wykorzystanie wzorca Page Object
      • Konfiguracja testów z wykorzystaniem Extension API w JUnit 5
    • Zaawansowane techniki tworzenia testów w JUnit 5
      • Testy parametryzowane wybranych scenariuszy testowych z JUnit 5
      • Integracja z AssertJ

Skontaktuj się z nami

Masz pytanie lub jesteś zainteresowany warsztatem? Napisz do nas. Odpowiemy jak najszybciej to możliwe.