• 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 w C# 2. Konfiguracja: Selenium i ChromeDriver

Strona główna > Kursy > Kurs Selenium w C# > Selenium w C# 2. Konfiguracja: Selenium i ChromeDriver

Po przygotowaniu środowiska w tej lekcji pokażę Ci w jaki sposób powinna wyglądać konfiguracja Selenium i ChromeDrivera. Na takich ustawieniach będziemy pracować już przez większość tego kursu.

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

Konfiguracja Selenium i ChromeDrivera: linki i materiały

  • Paczki nugetowe
  • Znak ucieczki i dosłowny string
  • [SetUp], [TearDown] i [Test]
  • Dokumentacja Selenium: linki

Paczki nugetowe

W ramach konfiguracji zainstalujemy sobie dwie paczki nugetowe. Paczki takie możesz zainstalować z NuGet Package Managera. Żeby go otworzyć wystarczy, że otworzysz projekt lub solucję w Visual Studio i:

  • klikniesz prawym przyciskiem myszy na solucji i wybierzesz „Manage NuGet Packages for Solution”,
  • klikniesz prawym przyciskiem myszy na projekcie i wybierzesz „Manage NuGet Packages”,
  • z górnego paska menu wybierzesz Tools>NuGetPackageManager>Manage NuGet Packages for Solution.

Paczki, które zainstalujemy dla naszego projektu to:

  • Selenium.WebDriver (wersja 3.141.0, czyli najnowsza na moment nagrywania tego filmu)
  • Selenium.WebDriver.ChromeDriver (wersja zgodna z wersją przeglądarki Chrome na Twojej maszynie)

Zanim jednak zainstalujemy tą drugą paczkę, pokażę Ci jak zainicjalizować drivera, korzystając z ChromeDrivera, którego ściągniemy sobie stąd.

Znak ucieczki i dosłowny string

W tym filmie przewinie się temat znaku ucieczki i dosłownego stringa (verbatim string). Chodzi o to, że backslash wewnątrz stringa nie jest interpretowany po prostu jako znak backslash, chyba, że powiemy inaczej. Backslash to znak ucieczki, który pozwala nam w połączeniu z innym znakiem np. na wstawienie nowej linii (\n). Jeżeli backslasha chcemy traktować dosłownie to możemy zrobić jedną z dwóch rzeczy:

  • wstawić backslasha przed backslasha: w ten sposób pierwszym backslashem zmieniamy domyślną interpretację tego drugiego; podwójny backslash zostanie więc zinterpretowany jako po prostu backslash;
  • potraktować stringa jako dosłownego (ang. verbatim string): robimy to w ten sposób, że przed całym literałem dodajemy małpę 🐒, czyli np. @”Jakiś string, który dosłownie potraktuje tego backslasha – \”; w ten sposób wszystko co znajdzie się po środku zostanie zinterpretowane dosłownie, jako określone znaki.

[SetUp], [TearDown] i [Test]

Oznaczenia [SetUp], [TearDown] i [Test] to informacje dla NUnita, co ma zrobić z metodami znajdującymi się bezpośrednio poniżej tych oznaczeń.

  • [SetUp]: metoda wykona się przed każdym testem (czyli przed każdą metodą oznaczoną jako [Test]).
  • [TearDown]: metoda wykona się po każdym teście (czyli po każdej metodzie oznaczonej jako [Test]).
  • [Test]: metoda oznaczona w ten sposób jest metodą testową (czyli testem).

Dokumentacja Selenium: linki

Konstruktor użyty przez nas do stworzenia obiektu ChromeDirver.

Reader Interactions

Komentarze

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

Pierwszy Sidebar

LEKCJE W KURSIE

  • 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
  • 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
  • Timeouty
  • Klikanie w elementy i wprowadzanie tekstu
  • Zadanie: testy logowania
  • Zasada DRY (Don't Repeat Yourself)
  • Wgrywanie pliku z dysku
  • 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
  • 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
  • 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
  • Inicjalizacja driverów: Chrome, Firefox, Opera, Edge, IE
  • Selenium Grid
  • Selenium Grid: RemoteWebDriver
  • Selenium Grid: konfiguracja
  • Selenium Grid: konfiguracja w plikach JSON
  • Projekt testowy: testy koszyka
  • Projekt testowy: testy płatności
  • Projekt testowy: testy kuponów
  • 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 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
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