logo

Selenium WebDriver

Selenium WebDriver jest najważniejszym składnikiem pakietu Selenium Tool. Najnowsza wersja „Selenium 2.0” jest zintegrowana z interfejsem API WebDriver, który zapewnia prostszy i bardziej zwięzły interfejs programowania.

pętla for w bashu

Poniższy obraz pozwoli ci dobrze zrozumieć komponenty Selenium i narzędzia do automatyzacji testów.


Selenium WebDriver

Selenium WebDriver został po raz pierwszy wprowadzony jako część Selenium v2.0. Początkowa wersja Selenium, tj. Selenium v1, składała się tylko z IDE, RC i Grid. Jednak wraz z wydaniem Selenium v3 wersja RC została uznana za przestarzałą i przeniesiona do starszego pakietu.

W WebDriver skrypty testowe można tworzyć przy użyciu dowolnego obsługiwanego języka programowania i można je uruchamiać bezpośrednio w większości nowoczesnych przeglądarek internetowych. Języki obsługiwane przez WebDriver to C#, Java, Perl, PHP, Python i Ruby.

Przed poznaniem koncepcji Selenium WebDriver powinieneś dobrze znać którykolwiek z obsługiwanych języków programowania. Obecnie sterownik Selenium Web jest najpopularniejszy w środowisku Java i C#. W tym samouczku używamy Selenium z Javą. Możesz skorzystać z linków podanych poniżej, aby poznać podstawowe i zaawansowane koncepcje języka Java i C#:

Samouczek Java: https://www.javatpoint.com/java-tutorial

Samouczek C#: https://www.javatpoint.com/c-sharp-tutorial

Selenium WebDriver działa znacznie szybciej w porównaniu do Selenium RC, ponieważ wykonuje bezpośrednie połączenia z przeglądarkami internetowymi. Z drugiej strony RC potrzebuje serwera RC do interakcji z przeglądarką.

WebDriver ma wbudowaną implementację sterownika Firefox (Gecko Driver). W przypadku innych przeglądarek należy podłączyć sterowniki specyficzne dla danej przeglądarki, aby komunikować się i uruchomić test. Do najczęściej używanych sterowników WebDriver należą:

  • Sterownik Google Chrome
  • Sterownik Internet Explorera
  • Sterownik Opery
  • Sterownik Safari
  • Sterownik modułu HTML (specjalny sterownik bezgłowy)

Selenium WebDriver – architektura

Selenium WebDriver API zapewnia możliwość komunikacji pomiędzy językami i przeglądarkami.

Poniższy obraz przedstawia architektoniczną reprezentację Selenium WebDriver.


Architektura Selenium WebDriver

Istnieją cztery podstawowe komponenty architektury WebDriver:

  • Powiązania językowe Selenium
  • Protokół JSON Wire
  • Sterowniki przeglądarki
  • Prawdziwe przeglądarki

Powiązania języka Selenium / Biblioteki klientów Selenium

Programiści Selenium zbudowali powiązania językowe/biblioteki klienta Selenium w celu obsługi wielu języków. Na przykład, jeśli chcesz używać sterownika przeglądarki w Javie, użyj powiązań Java. Wszystkie obsługiwane powiązania językowe można pobrać z oficjalnej strony internetowej (https://www.seleniumhq.org/download/#client-drivers) selenowy.

Protokół JSON Wire

JSON (JavaScript Object Notation) to otwarty standard wymiany danych w Internecie. Obsługuje struktury danych, takie jak obiekt i tablica. Dzięki temu łatwo jest zapisywać i odczytywać dane z JSON. Aby dowiedzieć się więcej o JSON, odwiedź https://www.javatpoint.com/json-tutorial

Protokół JSON Wire zapewnia mechanizm transportowy do przesyłania danych między serwerem a klientem. Protokół JSON Wire służy jako standard branżowy dla różnych usług internetowych REST. Aby dowiedzieć się więcej o usługach internetowych, odwiedź https://www.javatpoint.com/web-services-tutorial

Sterowniki przeglądarki

Selenium wykorzystuje sterowniki specyficzne dla każdej przeglądarki, aby nawiązać bezpieczne połączenie z przeglądarką bez ujawniania wewnętrznej logiki funkcjonalności przeglądarki. Sterownik przeglądarki jest również specyficzny dla języka używanego do automatyzacji, takiego jak Java, C# itp.

Kiedy wykonujemy skrypt testowy za pomocą WebDrivera, następujące operacje są wykonywane wewnętrznie.

  • Dla każdego polecenia Selenium generowane jest żądanie HTTP i wysyłane do sterownika przeglądarki.
  • Sterownik odbiera żądanie HTTP za pośrednictwem serwera HTTP.
  • Serwer HTTP decyduje o wszystkich krokach wykonania instrukcji wykonywanych w przeglądarce.
  • Status wykonania jest wysyłany z powrotem do serwera HTTP, który następnie jest odsyłany do skryptu automatyzacji.

Przeglądarki

Przeglądarki obsługiwane przez Selenium WebDriver:

  • Internet Explorera
  • Mozilla Firefox
  • GoogleChrome
  • Safari

Selenium WebDriver - funkcje

Niektóre z najważniejszych funkcji Selenium WebDriver to:

    Obsługa wielu przeglądarek: Selenium WebDriver obsługuje szeroką gamę przeglądarek internetowych, takich jak Firefox, Chrome, Internet Explorer, Opera i wiele innych. Obsługuje także niektóre niekonwencjonalne lub rzadkie przeglądarki, takie jak HTMLUnit.

Funkcje Selenium WebDriver
    Obsługa wielu języków: WebDriver obsługuje także większość powszechnie używanych języków programowania, takich jak Java, C#, JavaScript, PHP, Ruby, Pearl i Python. Dzięki temu użytkownik może wybrać dowolny obsługiwany język programowania w oparciu o swoje kompetencje i rozpocząć tworzenie skryptów testowych.Prędkość: WebDriver działa szybciej w porównaniu do innych narzędzi Selenium Suite. W przeciwieństwie do RC, nie wymaga żadnego serwera pośredniczącego do komunikacji z przeglądarką; raczej narzędzie komunikuje się bezpośrednio z przeglądarką.

Funkcje Selenium WebDriver
    Proste polecenia: Większość poleceń używanych w Selenium WebDriver jest łatwa do wdrożenia. Na przykład, aby uruchomić przeglądarkę w WebDriverze, używane są następujące polecenia:
    Sterownik WebDrivera = nowy sterownik Firefox(); (przeglądarka Firefox)
    Sterownik WebDrivera = nowy ChromeDriver(); (Przeglądarka Chrome)
    Sterownik WebDrivera = nowy sterownik InternetExplorer(); (przeglądarka Internet Explorer)WebDriver — metody i klasy: WebDriver zapewnia wiele rozwiązań pozwalających stawić czoła potencjalnym wyzwaniom związanym z testowaniem automatycznym.
    WebDriver umożliwia także testerom radzenie sobie ze złożonymi typami elementów internetowych, takimi jak pola wyboru, listy rozwijane i alerty, za pomocą dynamicznych wyszukiwarek.

Funkcje Selenium WebDriver

Indeks samouczków Selenium WebDriver


Samouczek Selenium WebDriver

  • Samouczek Selenium WebDriver
  • WebDriver kontra RC
  • Instalacja WebDriver
  • Pierwszy przypadek testowy WebDrivera
  • Polecenia WebDrivera
  • Uruchamianie testu w przeglądarce Chrome
  • Uruchamianie testu w przeglądarce Firefox
  • Uruchamianie testu w IE
  • Uruchamianie testu w przeglądarce Safari
  • Strategie lokalizacji
  • Lokalizowanie strategii według identyfikatora
  • Lokalizowanie strategii według nazwy
  • Lokalizowanie strategii według nazwy klasy
  • Lokalizowanie strategii według nazwy tagu
  • Lokalizowanie strategii według tekstu łącza
  • Lokalizowanie strategii według częściowego tekstu łącza
  • Lokalizowanie strategii według CSS
  • Lokalizowanie strategii za pomocą XPath
  • Obsługa drop-downów
  • WebDriver — przeciągnij i upuść
  • Alerty dotyczące obsługi sterownika WebDriver
  • Przewijanie strony internetowej
  • WebDriver - Polecenia przeglądarki
  • WebDriver - Polecenia nawigacyjne
  • WebDriver — polecenia WebElement
  • Obsługa przycisków radiowych
  • Pole wyboru obsługi
  • Twierdzenia dotyczące selenu
  • Siatka selenowa