• Przejdź do głównej nawigacji
  • Przejdź do treści
  • 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

Kurs Selenium w C#

Strona główna > Kursy > Kurs Selenium w C#

O kursie

Selenium to technologia dobra na początek przygody z automatyzacją testów. Jest stosunkowo prosta do zrozumienia, bo za jej pomocą naśladujemy akcje użytkownika. Jest także bardzo popularna w związku z czym w wielu ofertach pracy można się spotkać ze znajomością Selenium jako jednym z wymogów. Selenium ma także dużą społeczność zgromadzoną wokół tej technologii, w związku z czym łatwo uzyskać pomoc w razie problemów.

Kurs Selenium w C# przeprowadzi Cię od pierwszych metod aż do własnego frameworka opartego o Page Object Model. Wymagana jest podstawowa znajomość programowania w C#, ale w kursie będę przemycać trochę wiedzy dotyczącej programowania, zwłaszcza w przypadku trudniejszych tematów.

Ela
Prowadząca: Ela Sądel
Ilość lekcji (w tym zadań): 100/100, kurs jest już w pełni opublikowany.
Wsparcie merytoryczne: tak, w komentarzach pod lekcjami.
Wymagania: podstawowa znajomość C# (ale będę przemycać zagadnienia dotyczące programowania).

DOŁĄCZ I ZACZNIJ PRZYGODĘ Z SELENIUM

Chcesz wiedzieć więcej na temat tego jak działa platforma, subskrypcja i o co tutaj chodzi? Sprawdź sekcję Q&A.

Lista lekcji w kursie Selenium w C#

Pierwsze kroki

  • Przygotowanie środowiska (DARMOWA LEKCJA)
  • Konfiguracja: Selenium i ChromeDriver (DARMOWA LEKCJA)
  • Demo Selenium i testowanie asercji (DARMOWA LEKCJA)
  • Nawigacja pomiędzy stronami (DARMOWA LEKCJA)
  • Zamykanie sesji i okna przeglądarki (DARMOWA LEKCJA)
  • Zadanie: zamykanie sesji i okna przeglądarki
  • Źródło strony, url i tytuł
  • Zadanie: źródło i tytuł strony
  • Ustawienia okna przeglądarki
  • Zadanie: ustawienia okna przeglądarki

Lokatory: proste lokatory

  • Metody lokalizujące
  • Znaczniki i konsola deweloperska
  • Mechanizmy lokalizujące: nazwa klasy, id, atrybut name, nazwa taga
  • Mechanizmy lokalizujące: szukanie po linku
  • Zadanie: proste lokatory

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

Lokatory: 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
  • Klikanie w elementy i wprowadzanie tekstu
  • Zadanie: testy logowania
  • Zasada DRY (Don't Repeat Yourself)
  • Wgrywanie pliku z dysku

Czekanie i pobieranie informacji

  • Explicit Wait, czyli jawne czekanie
  • ExpectedConditions
  • Pobieranie informacji o elementach: położenie, rozmiar, nazwa taga, czy wyświetlony, czy zaznaczony, czy aktywny
  • Pobieranie informacji o elementach: wartości CSS, atrybuty i właściwości JavaScript oraz szukanie elementów w elemencie
  • Zadanie: informacje o elementach

Gesty (klasa Action)

  • Klikanie oraz przesuwanie kursora myszki
  • Prawy przycisk myszy oraz podwójny klik
  • Akcje na klawiaturze: przytrzymanie klawisza i wprowadzenie tekstu
  • Zadanie: akcje na klawiaturze i gesty myszy
  • Przesuwanie elementów
  • Zadanie: przesuwanie elementów

Wyższa szkoła jazdy

czyli rzeczy używane rzadziej

  • Ramki
  • Zadanie: ramki
  • Wykonywanie skryptów JavaScript
  • Zadanie: JavaScript
  • Ciasteczka: pobieranie ciasteczek
  • Usuwanie i dodawanie ciasteczek w Selenium
  • Co, gdy nie mamy pełnej nazwy ciasteczka?
  • Zadanie: Ciasteczka
  • Wyskakujące okienka (alerty)
  • Zadanie: wyskakujące okienka
  • Praca na kilku oknach przeglądarki
  • Zadanie: praca na kilku oknach przeglądarki
  • Listy rozwijane: pobieranie informacji
  • Listy rozwijane: zaznaczanie i odznaczanie opcji
  • Zadanie: listy rozwijane
  • Zrzuty ekranu
  • Zrzuty ekranu: przykład

Drivery i Selenium Grid

  • Inicjalizacja driverów: Chrome, Firefox, Opera, Edge, IE
  • Selenium Grid
  • Selenium Grid: RemoteWebDriver
  • Selenium Grid: konfiguracja
  • Selenium Grid: konfiguracja w plikach JSON

Projekt testowy i jego omówienie

  • Projekt testowy: testy koszyka
  • Projekt testowy: testy płatności
  • Projekt testowy: testy kuponów

Page Object Model

  • Wprowadzenie do Page Object Model
  • Pierwszy test w POM
  • Pierwsze klasy Page Object
  • "Chainowanie" metod
  • Czekanie po akcji vs czekanie przed akcją
  • Zadanie: dwa kolejne testy w POM
  • Rozszerzenie metody AddToCart() i przepisanie dwóch kolejnych testów
  • Zadanie: testy koszyka w POM
  • Testy płatności w POM
  • Wydzielenie klas Page Object i referencje do projektów
  • Zadanie: testy płatności w POM
  • BaseTest: bazowa klasa testu
  • CustomAssert: niestandardowe asercje
  • TestHelpers: metody pomocnicze
  • Jedna metoda, ale dwa typy zwracane
  • BasePage: bazowa klasa Page Object
  • Page Object: jeden poziom głębiej
  • Parametryzacja drivera
  • Refaktoring: nowy driver
  • Driver factory

Konfiguracja i dane testowe

  • Konfiguracja z pliku JSON
  • Deserializacja JSONa
  • Refaktoring: system operacyjny w parametrze drivera i URL strony
  • Dane testowe z pliku JSON
  • Użycie w testach danych testowych z pliku

Footer

Elzbieta Natalia Sadel
Av. de las Postas 21 6 C
29014 Málaga
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