• Przejdź do głównej nawigacji
  • Przejdź do treści
  • Przejdź do głównego paska bocznego
  • Przejdź do stopki
Testelka.pl

Testelka.pl

Testelka.pl - o technologiach w testowaniu oprogramowania

  • Kursy
    • DARMOWY: Java dla testerów
    • Selenium w Javie
    • Selenium w C#
    • Testy API w REST Assured
    • Selektory CSS
    • XPath
  • Materiały na raz
  • Blog
  • O Eli
  • Zaloguj się
  • DOŁĄCZ

Selenium 1. Przygotowanie środowiska programistycznego

Strona główna > Kursy > Kurs Selenium w Javie > Selenium 1. Przygotowanie środowiska programistycznego

W tej lekcji pokażę Ci w jaki sposób przygotować środowisko programistyczne do tego kursu.

Chcesz takich filmów więcej? Zasubskrybuj mój kanał!

Przygotowanie środowiska programistycznego: linki i materiały

Przygotowanie środowiska programistycznego obejmuje instalację kilku narzędzi, z których będziesz korzystać w trakcie trwania tego kursu. Możesz oczywiście użyć innego IDE lub frameworka do testów. Weź jednak pod uwagę, że w trakcie całego kursu używam poniższego zestawu narzędzi i to na nich będę Ci pomagać zrozumieć jak działa i do czego można użyć Selenium.

Narzędzia

  • JDK – Java Development Kit: do ściągnięcia tutaj, a wersja 10, z której korzystam w kursie jest do pobrania tutaj. Plik, który potrzebujesz pobrać wybierasz z sekcji  Java SE Development Kit 10.0.2 odpowiedni dla Twojego systemu operacyjnego. Jeżeli chcesz, możesz ściągnąć najnowszą wersję JDK – w zakresie w jakim będziemy używać Javy, użycie nowszej wersji nie powinna nam zrobić różnicy.
  • IntelliJ Idea Community (z Mavenem): IDE (zintegrowane środowisko programistyczne) do Javy. IntelliJ zawiera w sobie także Mavena, którego również będziemy używać w kursie. Maven jest narzędziem automatyzującym budowę oprogramowania, a my będziemy go używać do zarządzania zależnościami. IntelliJ w wersji Community jest do pobrania tutaj.

Zależności

Przygotowanie środowiska, to w naszym wypadku także dodanie odpowiednich zależności. Na filmie zobaczysz, że korzystam ze strony MVNRepository. Kopiuję stamtąd gotowe zależności do wklejenia do POMa (pliku konfiguracyjnego Mavena). Poniżej znajdziesz zależności, które będą Ci potrzebne w kursie.

  • JUnit Jupiter – framework do testów pisanych w Javie.
  • Selenium – zestaw narzędzi do automatyzacji aplikacji webowych.

A co z przeglądarką?

W kursie będę pracować na Chromie i do instalacji tej przeglądarki Cię zachęcam. Na tym etapie nie omawiam jeszcze jak używać w Selenium innych przeglądarek. Jeżeli więc nie masz przeglądarki Chrome, to zainstaluj ją przed rozpoczęciem kursu.

Error:java: error: release version 5 not supported

Tutaj znajdziesz instrukcje co zrobić, gdy dostaniesz taki błąd.

Reader Interactions

Komentarze

Nie masz aktywnej subskrypcji. Wykup subskrypcję albo zaloguj się, by móc komentować.

Komentarze

  1. Karol Dolega napisał

    15 stycznia, 2020 o 11:24 am

    Cześć,
    jak mam sprawdzić, którą wersję powinienem wybrać na stronie https://mvnrepository.com/ ?

    Odpowiedz
    • Elżbieta Sądel napisał

      15 stycznia, 2020 o 4:01 pm

      Wersję Selenium oraz NUnita należy wybrać tą, [...] CAŁOŚĆ KOMENTARZA WIDOCZNA DLA SUBSKRYBENTÓW.

      Odpowiedz
  2. Pawel Sokolski napisał

    27 czerwca, 2020 o 7:57 pm

    Witam Pani Elu,
    Wystąpił u mnie problem z importem do @testu (z junit). Wybrałem tak jak Pani mówiła:

    org.junit.jupiter
    junit-jupiter-api
    5.2.0
    test

    a w @Test brak opcji do importu

    Odpowiedz
    • Ela Sądel napisał

      28 czerwca, 2020 o 12:45 pm

      Halko! Zgaduję, że pisząc że wybrałeś, masz [...] CAŁOŚĆ KOMENTARZA WIDOCZNA DLA SUBSKRYBENTÓW.

      Odpowiedz
      • Pawel Sokolski napisał

        28 czerwca, 2020 o 1:00 pm

        Dzięki za odpowiedź i pomoc. Pozdrawiam

        Odpowiedz
        • Ela Sądel napisał

          28 czerwca, 2020 o 1:41 pm

          A pomogło? 🙂 [...] CAŁOŚĆ KOMENTARZA WIDOCZNA DLA SUBSKRYBENTÓW.

          Odpowiedz
          • Pawel Sokolski napisał

            28 czerwca, 2020 o 2:06 pm

            Wczoraj już sam sobie poradziłem. Trochę nad tym posiedziałem... coś dodawałem, usuwałem, ale w końcu się udało.

  3. Sławomir Świetlik napisał

    27 sierpnia, 2020 o 10:10 am

    Cześć czy jest szansa na dorzucenie poprawnej konfiguracji zwłaszcza Chrome i chromedriver dla ubuntu? (z dziwnego powodu firefox działa niestety Chrome sprawia problemy)

    Odpowiedz
    • Ela Sądel napisał

      27 sierpnia, 2020 o 10:48 am

      Jak powiesz co się dzieje, to postaram się pomó [...] CAŁOŚĆ KOMENTARZA WIDOCZNA DLA SUBSKRYBENTÓW.

      Odpowiedz
      • Sławomir Świetlik napisał

        27 sierpnia, 2020 o 10:53 am

        Jak widać poniżej zastosowana jest pełna ścieżka dostępu ta sama która działa dla Firefoxa.

        System.setProperty("webdriver.gecko.driver","/home/slavo/Java/Selenium_w_Java_TL_ubuntu/src/main/resources/geckodriver");
        // driver = new FirefoxDriver();
        // driver.manage().window().setSize(new Dimension(1280,720));
        System.setProperty("webdriver.chrome.driver","/home/slavo/Java/Selenium_w_Java_TL_ubuntu/src/main/resources/chromedriver");
        driver = new ChromeDriver();
        driver.manage().window().setSize(new Dimension(1280,720));

        Czy możesz podesłać jakiś dobry materiał odnośnie WebDriverManager np skąd ciągnąć i instalować "ten właściwy" 🙂

        Odpowiedz
        • Ela Sądel napisał

          27 sierpnia, 2020 o 11:17 am

          A sprawdziłeś film, który Ci podesłałam? Tam [...] CAŁOŚĆ KOMENTARZA WIDOCZNA DLA SUBSKRYBENTÓW.

          Odpowiedz
          • Sławomir Świetlik napisał

            28 sierpnia, 2020 o 8:58 am

            Tak sprawdzone niestety WebDriverManager nie pomaga.

          • Ela Sądel napisał

            28 sierpnia, 2020 o 9:31 am

            Halko! Rozumiem, jedyne co Ci mogę na teraz porad [...] CAŁOŚĆ KOMENTARZA WIDOCZNA DLA SUBSKRYBENTÓW.

          • Sławomir Świetlik napisał

            30 sierpnia, 2020 o 9:11 am

            Udało się załatwić problem z Chrome , po wyrzuceniu z systemu przeglądarki Chromium wszystko działa. Dzięki za pomoc.

          • Ela Sądel napisał

            31 sierpnia, 2020 o 9:04 am

            Super, dzięki za info! [...] CAŁOŚĆ KOMENTARZA WIDOCZNA DLA SUBSKRYBENTÓW.

  4. Dagmara Opałka napisał

    18 września, 2020 o 11:01 am

    Hej, pojawil mi sie jednak problem z importowaniem Selenium:
    https://zapodaj.net/a70dd5dc6dca8.png.html
    Jakby IntelIJ nie podpowiada mi ze moge po prostu wcisnac enter i alt i to zaimprotowac. Wpisalam recznie import.org.openga... ale to tez nic nie dalo :/

    Odpowiedz
    • Ela Sądel napisał

      18 września, 2020 o 3:41 pm

      Halko! A jak wygląda Twój pom.xml? Czy dodałaś [...] CAŁOŚĆ KOMENTARZA WIDOCZNA DLA SUBSKRYBENTÓW.

      Odpowiedz

Pierwszy Sidebar

LEKCJE W KURSIE

  • Przygotowanie środowiska programistycznego (DARMOWA LEKCJA)
  • Inicjalizacja drivera i demo Selenium (DARMOWA LEKCJA)
  • Nawigacja pomiędzy stronami (DARMOWA LEKCJA)
  • Zamykanie przeglądarki lub sesji (DARMOWA LEKCJA)
  • Zadanie: zamykanie przeglądarki i sesji (DARMOWA LEKCJA)
  • 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
  • Metody lokalizujące
  • Mechanizmy lokalizujące: nazwa klasy, id, atrybut name, nazwa taga
  • Mechanizmy lokalizujące: tekst linku
  • Zadanie: proste lokatory
  • Mechanizmy lokalizujące: wprowadzenie do selektorów CSS i XPath
  • Selektory CSS: tag, id, klasa
  • Selektory CSS: atrybuty i łączenie warunków
  • Zadanie: atrybuty i łączenie warunków w selektorach CSS
  • Selektory CSS: fragment wartości atrybutu
  • Zadanie: fragment wartości atrybutów w selektorach CSS
  • Selektory CSS: relacje między elementami
  • Zadanie: relacje w selektorach CSS
  • XPath: atrybuty i tagi
  • XPath: fragment atrybutu i tekst
  • Zadanie: atrybuty i tekst w XPath
  • XPath: relacje między elementami
  • Zadanie: relacje między elementami w XPath
  • 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: DRY
  • Wstęp do zasad programowania: KISS
  • Wstęp do zasad programowania: YAGNI
  • Zadanie: wstęp do zasad programowania
  • 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
  • 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 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
  • 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
  • Inicjalizacja driverów: Chrome, Firefox, Opera, Internet Explorer, Edge
  • Konfiguracja Selenium Grid
  • RemoteWebDriver: inicjalizacja drivera wspierającego testy w trybie rozproszonym
  • 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: 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
  • Plik konfiguracyjny
  • Wzorzec Singleton na przykładzie konfiguracji
  • Synchronizacja w Singletonie i konfiguracja bez Singletona
  • Dane testowe z pliku
  • PageFactory: inicjalizacja elementów i FindBy
  • Wady i zalety PageFactory oraz pozostałe możliwości

Footer

Elzbieta Natalia Sadel
Calle Marzo 9 1 D
41009 Sevilla
Hiszpania
NIF: Y7882076J

Zostań trenerem!

Regulamin
Polityka prywatności
Polityka wsparcia w ramach członkostwa

Koszulki i torby dla testerów

Pomoc
Kontakt

Poskładane z 💛 przez Automatela.pl

Ta strona korzysta z ciasteczek aby świadczyć usługi na najwyższym poziomie. Dalsze korzystanie ze strony oznacza, że zgadzasz się na ich użycie.ZgodaNie wyrażam zgodyPolityka prywatności