Selenium w Javie 🧙: od podstawowych metod po Page Object Model

Nauczę Cię skutecznie i ludzkim językiem pisać testy Selenium. Dołącz do kursu online w formie wideo z zadaniami.

Zapisy są zamknięte. Dołącz do listy mailingowej, a poinformuję Cię o otwarciu zapisów.

„Konkretne tłumaczenie skomplikowanych zagadnień”Dominika, studentka na testelka.pl 💛  

Z moim wsparciem merytorycznym na pewno zrozumiesz!

Czego się nauczysz:

  • pisać testy wykorzystując Page Object Model,
  • pobierać konfigurację i dane testowe z pliku,
  • budować zaawansowane selektory CSS i XPath,
  • uruchamiać testy w Selenium Grid,
  • czekać na elementy i inne warunki,
  • wykonywać zrzuty ekranu w teście,
  • inne bajery: obsługa ramek (iframe), praca z klasą Action (gesty), obsługa alertów i ciasteczek… i więcej!

Co studenci mówią o moich kursach Selenium:

Polecam kurs „Testelki” wszystkim zainteresowanym tematyką automatyzacji testów w Selenium. Kurs jest prowadzony w taki sposób że do jego rozpoczęcia faktycznie wystarczy podstawowa znajomość Javy. Poszczególne tematy omawiane na kursie są wyjaśnione w bardzo przystępny sposób. Dobrze dobrany zakres zadań pozwala na praktyczne „przećwiczenie” i wykorzystanie poznanych zagadnień. Największe wrażenie zrobił na mnie bardzo szeroki zakres kursu – jakiś czas temu uczestniczyłem w szkoleniu stacjonarnym z Selenium, ale zakres omawianych na nim tematów był o około połowę mniejszy niż na kursie Eli (przy nieporównywalnie większym koszcie szkolenia stacjonarnego).

Wojtek, były student testelka.pl

Dlaczego Selenium na testelka.pl?

Uczysz się kiedy Ci pasuje

To nie jest dwudniowe szkolenie, z którego nic nie będziesz pamiętać. Dostęp jest dożywotni, a lekcje przerabiasz kiedy Ci pasuje.

Praktyka!

W ramach kursu otrzymujesz nie tylko lekcje ale też zadania z objaśnieniem możliwego rozwiązania w formie wideo. Ponadto, przed lekcjami o POM będziesz mieć do wykonania projekt testowy.

Moje wsparcie merytoryczne

W ramach kursu dostajesz moje wsparcie merytoryczne. Pod każdą lekcją możesz zadać pytanie, a ja odpowiadam z reguły tego samego dnia. To nie jest grupa samopomocowa na Facebooku, tylko wsparcie merytoryczne z prawdziwego zdarzenia.

Co studenci mówią o moich kursach Selenium:

Naprawdę bardzo dobry kurs, nauka to była czysta przyjemność 🙂 Każde zagadnienie było bardzo dobrze i dokładnie wytłumaczone, i mimo, że kontakt w komentarzach w razie wątpliwości czy problemów był ekspresowy, to musiałam z niego skorzystać zaledwie kilka razy – po prostu wszystko wiedziałam z filmów 🙂 Dodatkowo atmosfera, jaką tworzysz dla kursantów zarówno tak na co dzień w komunikacji jak i podczas lekcji jest naprawdę bardzo pozytywna  – aż chce się uczyć 🙂 Kurs jest bardzo obszerny – mnóstwo informacji przekazane w przystępny sposób. Twoja wiedza i umiejętności są naprawdę imponujące 🙂 Polecam każdemu kto chciałby rozwijać się w kierunku automatyzacji testów, warto 🙂 

Patrycja, studentka Selenium w Javie na testelka.pl

Już 652 studentów zaufało moim kursom. Teraz czas na Ciebie!

Wskakuj na pokład i pchnij swoją karierę w kierunku automatyzacji testów!

FAQ

Dla kogo jest ten kurs?

Przede wszystkim dla każdego, kto już jest testerem, ale jeszcze nie automatyzującym. Ale z tego kursu skorzystają także ci, którzy automatyzowali już jakieś testy jednak nie w Selenium. Jeżeli nie jesteś jeszcze testerem i nie znasz podstawowej terminologii, pewne zagadnienia mogą się dla Ciebie okazać niejasne. Możesz je jednak nadgonić na bieżąco posiłkując się internetem, jednak weź pod uwagę, że będzie to wymagać od Ciebie trochę więcej pracy.

Żeby wycisnąć z tego kursu jak najwięcej, dobrze mieć podstawy programowania w Javie. Bez tego też możesz przerobić kurs, ale będziesz musiał/musiała nadganiać materiał na bieżąco korzystając z zewnętrznych materiałów. Jeżeli nie czujesz się jeszcze pewnie w Javie nalepiej, jeżeli wybierzesz opcję z kursem Javy.

Poniżej znajdziesz listę zagadnień, które wpisują się w moją definicję podstaw programowania. Ważne żeby poniższe elementy rozumieć i umieć stosować.

  • Co to są zmienne i typy danych?
  • Co to jest null?
  • Co to jest konkatenacja (łączenie łańcuchów tekstowych)?
  • Co to jest klasa i obiekt?
  • Co to są pola klasy?
  • Czym są właściwości (dla C#)
  • Co to są metody i parametry?
  • Co to jest konstruktor i jak utworzyć obiekt klasy?
  • Co to jest klasa i metoda statyczna?
  • Co to są wyjątki?
  • Przechwytywanie wyjątków: blok try catch
  • Co to jest interfejs?
  • Co to są i jak używać pętli: foreach, for, while, do while?
  • Co to jest i jak używać instrukcji warunkowej if?
  • Co to jest znak ucieczki?
  • Co to są wyrażenia lambda?
  • Co to jest i jak wykonać konwersję i rzutowanie typów?
  • I ogólnie co to jest programowanie obiektowe i na czym polegają jego paradygmaty?

Dla kogo ten kurs nie jest?

Ten kurs nie jest dla osób, które potrafią zbudować testy w oparciu o POM i nie mają problemu w korzystaniu z dokumentacji Selenium. Nie jest on też dla osób, które chcą pisać w innych językach niż Java. Selenium się mocno między sobą nie różni, ale nie znam specyfiki innych języków, np. Pythona, dlatego bezpieczniej będzie, jeżeli sięgniesz po materiały przygotowane przez specjalistów z danego języka.

Nie polecam też tego kursu osobom, które jeszcze nie są testerami. Zakładam, że nie muszę tłumaczyć podstawowej terminologii ani w ogóle koncepcji testów.

Czy dostanę dostęp do wszystkich lekcji od razu?

Z kursu Selenium tak! W momencie udanego zakupu dostajesz dostęp do wszystkich materiałów w ramach Twojego członkostwa. Jeżeli zdecydujesz się także na kurs Javy, to tam kolejne moduły będą odblokowywane co tydzień.

Czym się różni kurs na testelka.pl od innych kursów (np. na Udemy)?

W kursie na testelka.pl teorię ograniczyłam do niezbędnego minimum, a z reguły wplatam ją w praktykę. Slajdy z kodem? Tylko, jeżeli coś jest naprawdę trudne i wymaga małego wprowadzenia. Będziesz poznawać Selenium i trochę też programowanie, poprzez działanie. W ramach kursu dostajesz także zadania, których rozwiązania omawiam w formie wideo. Mam też dowody (feedback studentów) na to, że moje lekcje są świetnie wytłumaczone, a nawet skomplikowane zagadnienia są zaprezentowane w przystępny sposób.

Na czym polega wsparcie merytoryczne?

Wsparcie merytoryczne jest realizowane poprzez sekcję pytań i odpowiedzi pod każdą lekcją. Czyli jeżeli coś jest niejasne, to tam właśnie pytasz, a ja odpowiadam. Pamiętaj, że to nie są konsultacje. W ramach wsparcia merytorycznego odpowiadam na pytania i wątpliwości dotyczące zagadnienia omawianego na lekcji lub w zadaniu na przykładzie strony, którą omawiamy w materiale.

A co jeżeli dołączę i okaże się, że ten kurs jednak nie jest dla mnie?

Jeżeli w ciągu 14 dni od daty zakupu stwierdzisz, że to nie dla Ciebie daj znać – oddam Ci pieniądze.

Jak wygląda nauka? Czy będą jakieś zadania?

Tak! Każdy nowy temat kończy się zadaniem, którego rozwiązanie (albo możliwe rozwiązania) omawiam także w materiale wideo. Przed lekcjami o Page Object Model dostaniesz też do wykonania projekt testowy, czyli napisanie określonych testów do naszej testowej aplikacji.

Ile lekcji zawiera kurs?

Kurs Selenium w Javie zawiera 94 lekcje i zadania wideo pogrupowane w 15 modułów.

Czy muszę znać język angielski

Kurs prowadzony jest w języku polskim. W kodzie np. nazwy zmiennych i metod będziemy pisać w języku angielskim, bo to standard. Angielski dobrze umieć nie pod kurs, ale pod kątem rozwoju kariery w IT, bo dokumentacja do narzędzi, w tym np. do Selenium, jest po angielsku.

Czy wystawiasz faktury?

Tak, faktury generują się automatycznie na podstawie danych, które wprowadzisz w trakcie zamówienia. Nie zapomnij więc podać danych firmy jeżeli zamawiasz na firmę.

Uwaga: mimo tego, że prowadzę działalność w Hiszpanii i tutaj mam siedzibę, na fakturze zobaczysz stawkę VAT odpowiadającą krajowi, który jest siedzibą Twojej firmy/Twoim adresem zamieszkania. Wynika to z tego, że stawki VAT dla produktów cyfrowych odpowiadają krajowi nabywcy, nie sprzedawcy. Jeżeli Twoja firma ma poprawny europejski numer VAT i zostanie on poprawnie zweryfikowany podczas zamówienia, stawka VAT zostanie odjęta od sumy zamówienia i zapłacisz stawkę bez VAT.

Czego potrzebuję, żeby móc korzystać z kursu?

Komputera z dostępem do internetu i przeglądarką. Optymalnie będzie, jeżeli nie będzie to laptop służbowy, bo te potrafią mieć konfigurację uniemożliwiającą wykonanie pewnych akcji. Jedyny znany mi przykład takiej sytuacji to postawienie lokalnej aplikacji na potrzeby kursu testowania API w RestAssured.

By mieć dostęp do samego kursu wystarczy nawet smartfon z dostępem do internetu ale przeglądanie nie będzie wtedy wygodne – kod może być słabo widoczny na mniejszych ekranach. Kurs jest przygotowany na Windowsie i przy użyciu przeglądarki Chrome, więc najłatwiej Ci będzie korzystając właśnie z Windowsa i przeglądarki Chrome. Kurs nie jest dostępny offline.

Na jakim systemie operacyjnym przeprowadzany jest kurs?

Wszystko pokazuję na Windows 10/Windows 11. Mimo, że samo Selenium nie będzie się różnić w zależności od systemu to już zachowanie przeglądarek może. Nie poruszam w kursie tematyki specyficznego zachowania przeglądarek na różnych systemach operacyjnych.

Czy z konta może korzystać więcej niż jedna osoba?

Konto jest imienne i może z niego korzystać tylko jedna osoba. Współdzielenie konta z innymi osobami jest niezgodne z regulaminem, który akceptujesz w momencie zakupu. Jeżeli chcesz wykupić co najmniej 5 dostępów (np. na firmę) skontaktuj się ze mną poprzez formularz kontaktowy.

Czy materiały można ściągnąć?

Nie, dostęp do materiałów jest tylko online za pośrednictwem strony Testelka.pl.

Czy otrzymam certyfikat?

Nie przeprowadzam egzaminów. Mogę Ci jednak wystawić certyfikat uczestnictwa. W takim certyfikacie znajdzie się informacja o tym jaki procent lekcji oznaczyłeś/aś jako ukończone.

Lista lekcji

Poniżej zobaczysz pełną listę lekcji i zadań w kursie Selenium. Skorzystaj z pierwszych pięciu lekcji DEMO i zobacz jak wyglądają lekcje w kursie.

Pierwsze kroki

Przygotowanie środowiska programistycznego (LEKCJA DEMO)
Inicjalizacja drivera i demo Selenium (LEKCJA DEMO)
Nawigacja pomiędzy stronami (LEKCJA DEMO)
Zamykanie przeglądarki lub sesji (LEKCJA DEMO)
Zadanie: zamykanie przeglądarki i sesji (LEKCJA DEMO)
Tytuł strony, URL i jej źródło
Zadanie: pobieranie tytułu, URLa i źródła strony
Ciasteczka
Zadanie: ciasteczka
Rozmiar i pozycja okna przeglądarki
Zadanie: rozmiar i pozycja okna przeglądarki

Proste lokatory

Metody lokalizujące
Mechanizmy lokalizujące: nazwa klasy, id, atrybut name, nazwa taga
Mechanizmy lokalizujące: tekst linku
Zadanie: proste lokatory

Selektory CSS

Co to jest CSS i do czego służą selektory CSS
Tagi i atrybuty w selektorach CSS
Selektory specjalne – id i klasa elementu
Zadanie: atrybuty w selektorach CSS
Fragmenty wartości atrybutów
Dzieci, potomkowie, bracia
Zadanie: dzieci, potomkowie, bracia
Selektory pseudoklas: pozycja
Selektory pseudoklas: typy i pusty element
Selektor negacji

XPath

Co to jest XPath i do czego służy
Atrybuty i tagi
Fragment atrybutu i szukanie po tekście
Zadanie: atrybuty, tagi i tekst
Dzieci i potomkowie
Rodzice, przodkowie i rodzeństwo
Pozycja
Zadanie: relacje
Negacja

Interakcje z elementami

Timeouty: oczekiwanie na pojawienie się elementu i załadowanie strony
Interakcje z WebElementami: klikanie w elementy i wprowadzanie tekstu
Interakcje z WebElementami: wgrywanie pliku z dysku
Zadanie: interakcje z WebElementami

Wstęp do zasad programowania

Wstęp do zasad programowania: DRY
Wstęp do zasad programowania: KISS
Wstęp do zasad programowania: YAGNI
Zadanie: wstęp do zasad programowania

Czekanie i pobieranie informacji

Czekanie na warunki: ExplicitWait
Czekanie na warunki: ExpectedConditions
Zadanie: czekanie na warunki
Metody na WebElementach: pobieranie informacji o elementach i findElement()
Zadanie: metody na WebElementach

Wyższa szkoła jazdy cz.1

Ramki
Zadanie: ramki
Wykonywanie JavaScriptów
Zadanie: wykonywanie JavaScriptów
Obsługa alertów
Zadanie: obsługa alertów
Praca na kilku oknach przeglądarki
Zadanie: praca na kilku oknach przeglądarki
Listy rozwijane
Zadanie: listy rozwijane

Gesty

Gesty w Selenium: wstęp
Gesty w Selenium: klik, podwójny klik oraz prawy przycisk myszy
Gesty w Selenium: zdarzenia klawiatury i wysyłanie tekstu
Zadanie: gesty w Selenium
Gesty w Selenium: przesuwanie obiektów
Zadanie: przesuwanie obiektów

Wyższa szkoła jazdy cz.2

Web Storage: metody na Local Storage i Session Storage
Web Storage: użycie JavaScript
Zadanie: WebStorage
Zrzuty ekranu: wykonywanie screenshotów strony i elementów
Zrzuty ekranu: przykład użycia screenshotów

Drivery i Selenium Grid

Inicjalizacja driverów: Chrome, Firefox, Opera, Internet Explorer, Edge
Konfiguracja Selenium Grid
RemoteWebDriver: inicjalizacja drivera wspierającego testy w trybie rozproszonym

Projekt testowy

Projekt testowy
Omówienie projektu testowego: testy koszyka
Omówienie projektu testowego: testy płatności
Omówienie projektu testowego: testy metod płatności

Page Object Model

Page Object Model: wprowadzenie
Page Object Model: jak zacząć budować własny framework testowy
Page Object Model: kolejna klasa Page Object
Zadanie z POM: przepisanie testu addOneProductTenTimesTest()
Page Object Model: refaktoryzacja kodu i klasa BaseTest
Page Object Model: refaktoryzacja kodu i klasa BasePage
Page Object Model: refaktoryzacja i nowa metoda w klasie CartPage
Page Object Model: części wspólne różnych stron na przykładzie HeaderPage
Zadanie z POM: części wspólne stron (stopka w POM)
Zadanie z POM: przepisanie pozostałych testów koszyka
Zadanie z POM: przepisanie testu płatności bez zakładania konta cz. 1
Zadanie z POM: przepisanie testu płatności bez zakładania konta cz. 2 – wprowadzanie danych karty
Page Object Model: DriverFactory

Konfiguracja i dane testowe

Plik konfiguracyjny
Wzorzec Singleton na przykładzie konfiguracji
Synchronizacja w Singletonie i konfiguracja bez Singletona
Dane testowe z pliku

PageFactory

PageFactory: inicjalizacja elementów i FindBy
Wady i zalety PageFactory oraz pozostałe możliwości

Selenium 4

Upgrade/instalacja
Zmiany typów parametrów
Nowe okno lub karta
Względne lokatory
Basic Auth
Wykrywanie zmian w DOM
Logi w konsoli przeglądarki
Wyjątki JavaScript
Przechwytywanie ruchu sieciowego
Metryki wydajności
Drukowanie strony
Shadow DOM
Informacje o elementach
Grid
Grid: przykłady

+ bonusy

Kurs raportowania w Allure

Wprowadzenie
Konfiguracja testów
Instalacja Allure
Wygenerowanie raportu
Historia, czyli zapewnienie sobie danych do trendu
Github i klucze SSH
Wrzucenie kodu na GitHub
Instalacja TeamCity
TeamCity i Github
TeamCity: uruchomienie testów
TeamCity: raporty Allure
Suites (zestawy testów) i description (opis)
Severity i wyłączone testy
Kategorie błędów (categories)
Powtórki testu (retries)
Informacje o środowisku
Zrzuty ekranu w raporcie
Właściciel testu i linki

Testowanie API w RestAssured

Lokalna aplikacja do testów za pomocą LocalWP lub XAMPP
Czym jest API?
Pierwsze zapytanie do API
Pierwszy test API – metoda GET
Tworzenie obiektów w API – metoda POST
Zadanie: tworzenie i pobieranie obiektów
Usuwanie i zmiana obiektów – metody DELETE i PUT
CRUD: wspólne elementy żądań
CRUD: PUT i PATCH oraz niezależność testów
Jak szperać w JSONie?
Zadanie: żądania w pętli
Asercje
Serializacja i deserializacja
Zadanie: serializacja i deserializacja
Organizacja projektu testowego
Zadanie: organizacja projektu testowego

Halko!

Tu Ela Sądel! Już od prawie trzech lat tworzę kursy w ramach testelka.pl. Wcześniej pracowałam zarówno w korporacjach jak i startupach testując manualnie, pisząc testy automatyczne UI i API oraz testując na przykład rozwiązanie oparte o Business Intelligence. Kursy tworzę zarówno w oparciu o Javę jak i C#, chociaż jakby mnie zapytać, to nie umiem powiedzieć, który język lubię bardziej.

Najważniejsze jest dla mnie wytłumaczyć wszystkie zagadnienia w taki sposób, żeby mimo swojego skomplikowania stały się absurdalnie jasne. I mam dowody na to, że to działa.

Co o moich materiałach mówią studenci

(i wcale im za to nie płacę)

Byłem pierwszą osobą w firmie, która chciała wdrożyć testy automatyczne aplikacji webowej w procesie wydawania produktu. Z racji braku doświadczenia szukałem przystępnego kursu, który pomógłby mi w tym zadaniu. Elę poznałem podczas jednego z warsztatów dla testerów w Poznaniu, który prowadziła, tam też zaproponowała rozwijanie swoich umiejętności w automatyzacji na swojej stronie. Zachęcony sposobem, w jaki prowadziła warsztat, przystąpiłem do kursu Javy + Selenium i przyznaję, że była to znakomita decyzja.

Kurs był bardzo przystępnie prowadzony, zarówno w części dotyczącej języka programowania + Selenium oraz w późniejszym czasie z testów API. Często wracałem do poszczególnych sekcji, żeby odświeżyć sobie niektóre informacje. Kurs pomógł mi założyć od podstaw projekt testów automatycznych, który mogłem rozwijać dalej ze swoim zespołem deweloperskim. Dzięki kursowi zapoznałem się z technologią i oprogramowaniem oraz podniosłem swoje kwalifikacje jako tester.

Tomek, Quality Assurence Engineer, student Selenium w Javie na testelka.pl

Jeśli zastanawiasz się nad kursem selenium to królowa jest tylko jedna. Czy kurs robi robotę? No wiesz… w 2,5 miesiąca zostałem testerem automatyzujacym, wiec oceń sam. Ja polecam, nic lepszego nie ma, przestań szukać, kupuj, ucz się i powodzenia!” 

Tomek, Inżynier ds. rozwoju testów w Sii i student Selenium w Javie

Kurs przełamał moją niechęć do testów automatycznych. Nauczyłam się odnajdywać elementy na stronie, tworzyć zrozumiałe scenariusze oraz analizować komunikaty błędów. To była bardzo dobra inwestycja. Dzięki temu, że wszystko było jasno wytłumaczone nie pogubiłam się w trakcie i byłam w stanie ukończyć ten kurs. Teraz czuję się zdecydowanie pewniej i zamierzam wykorzystać moją wiedzę w codziennej pracy.

Ewa, Test Engineer i studentka Selenium w Javie

Nareszcie trafiłam na kogoś kto mówi moim językiem i tłumaczy zagadnienia w prosty i logiczny sposób. Dzięki temu kursowi poczułam się pewniej w testach automatycznych i poczułam, że mogę i chcę „więcej”. Największą zaletą tego kursu jest idealna proporcja pomiędzy teorią a praktyką. Polecam dołączenie do Testelki zwłaszcza początkującym testerom, lub osobom które chcą podszlifować podstawy, ale kurs jest tak naprawdę przeznaczony dla każdego. Dla mnie: to najlepiej wydane pieniądze w życiu.

Ela, była studentka testelka.pl

Po pierwsze bardzo dziękuję za Twoje kursy – przede wszystkim Selenium w Javie i sama Java (chociaż kupiłam Twój kurs ze względu na Selenium w C# ;-). Przede wszystkim wiedza o selektorach i jak je tworzyć pomogła mi na studiach i pomoże w tworzeniu projektu na zaliczenie. Za wiedzę z kursu Selenium w Javie zapunktowałam na rozmowie i dostałam pracę 😉 Polecam Twoje kursy każdemu, kto pyta skąd się uczę i mam nadzieję kilka osób skusi się lub już się skusiło na dołączenie do Testelki! Pozdrawiam serdecznie i życzę dalszych sukcesów przy tworzeniu tak świetnych kursów!

Paulina, była studentka na testelka.pl

Świetnie tłumaczysz! Tematy, które wybierasz są ciekawe (ew. są nudne, ale ciekawie przedstawione, a to jeszcze większy plus dla Ciebie). Trochę się naszukałam zanim wybrałam Twój kurs i to był strzał w dziesiątkę! Na co dzień pracuję jako tester, mam kilka książek o automatyzacji przeczytanych, ale dzięki Tobie cała ta moja wiedza skleiła mi się w końcu w jedną całość 🙂 Planuję jeszcze tu wrócić i dokończyć Twój kurs, także mam nadzieję, że nie przestaniesz go rozwijać, bo robisz kawał dobrej roboty! 🙂

Jest jeszcze jedna rzecz za która chciałabym Cię pochwalić – bardzo cenię sobie ludzi, którzy potrafią wyjaśnić skomplikowane rzeczy w prosty sposób. To rzadka cecha, a Ty ją masz 🙂

Sylwia, Junior Quality Assurance Engineer w Hycom

Jestem testerem oprogramowania z rocznym doświadczeniem. Już wcześniej nieco „programowałem”, także w pracy w wolnych chwilach pisaliśmy testy automatyczne, ale z perspektywy czasu nie było to nic wybitnego. Kurs mi zajął z przerwami około 2 miesiące może 2,5 miesiąca. Liczę czas łącznie z zrobieniem notatek plus przerobienie samemu na własnych przykładach materiałów. Plusy tego kursu: + dobre objaśnienie zagadnień (fajne te slajdy z prezentacji, dużo pomagają) i widać, że miałaś przemyślane jak to tłumaczysz, + dużo zagadnień wyjaśniasz w tym kursie (dlatego trzeba wiele czasu, aby go przerobić), bo są i Actions i RemoteWebDriver, + zadania na koniec danego działu, w celu powtórzenia, + sam projekt, który objaśnia POM jest dla mnie największym atutem tego kursu, bo w internecie jest dużo kursów, które uczą automatyzować, ale niestety nie mają tego wzorca albo go pokazują na 2-4 klasach i radźcie sobie sami, a tutaj mamy najpierw zrobienie bez POM i następnie przerabianie co jest fajne i tego jest dużo więcej. Ogólnie z kursu jestem bardzo zadowolony, bo wiem, że z niego wiele wyniosłem i już czuję się mocniej odnośnie Selenium.

Igor, były student na Testelka.pl

Absolutnie nic nie ryzykujesz!

W przypadku, gdy stwierdzisz, że to nie dla Ciebie i dasz mi o tym znać w ciągu 14 dni od momentu zakupu, zwrócę Ci pieniądze. Po prostu.