Selenium to potężne narzędzie do kontrolowania przeglądarek internetowych za pomocą programów i przeprowadzania automatyzacji przeglądarek. Jest funkcjonalny dla wszystkich przeglądarek, działa na wszystkich głównych systemach operacyjnych, a jego skrypty są napisane w różnych językach, tj Pyton , Jawa , C# itp., będziemy pracować z Pythonem. Samouczek Selenium obejmuje wszystkie tematy, takie jak – WebDriver, WebElement, testowanie jednostkowe za pomocą selenu. Ten samouczek dotyczący Selenium w języku Python omawia Selenium od podstaw po zaawansowane i profesjonalne zastosowania. 
Dlaczego warto uczyć się Selenium Pythona?
- Otwarte oprogramowanie i przenośne – Selenium to przenośne środowisko testowania sieci Web o otwartym kodzie źródłowym.
- Połączenie narzędzia i DSL – Selenium to połączenie narzędzi i języka DSL (DomainSpecific Language) w celu przeprowadzania różnego rodzaju testów.
- Łatwiejsze do zrozumienia i wdrożenia – Polecenia Selenium są podzielone na kategorie według różnych klas, co ułatwia zrozumienie i wdrożenie.
- Mniejsze obciążenie i stres dla testerów – Jak wspomniano powyżej, ilość czasu wymagana do testowania powtarzanych scenariuszy testowych w każdej nowej wersji jest zredukowana prawie do zera. W związku z tym obciążenie testera zostaje zmniejszone.
- Redukcja kosztów dla Klientów Biznesowych – Firma musi płacić testerom ich pensję, która jest oszczędzana dzięki narzędziu do testów automatycznych. Automatyzacja nie tylko oszczędza czas, ale także przynosi korzyści kosztowe dla firmy.
Nauka Selenium z Pythonem otwiera wiele możliwości wydajnego i efektywnego testowania aplikacji internetowych, szczególnie w połączeniu z popularnymi platformami testowymi w chmurze, takimi jak LambdaTest.
Test Lambda to platforma do orkiestracji i wykonywania testów oparta na sztucznej inteligencji, która umożliwia programistom i testerom przeprowadzanie testów Selenium Python na dużą skalę w zdalnym laboratorium testowym obejmującym ponad 3000 rzeczywistych przeglądarek i systemów operacyjnych na komputery stacjonarne. Dzięki Selenium Python możesz pisać solidne skrypty testowe, aby zautomatyzować testowanie aplikacji internetowych, zapewniając ich funkcjonalność w różnych przeglądarkach i platformach. Programiści i testerzy mogą nawet przeprowadzać testy równolegle na wielu kombinacjach, co pomaga im w dostarczaniu wysokiej jakości kompilacji z szybkością światła.
Podstawy selenu- Podstawy selenu
- Składniki selenu
- Zastosowania i zastosowania
- Cechy
- Ograniczenia
Podstawy Selenu Pythona
- Wprowadzenie i instalacja Selenium Python
- Nawigacja po linkach metodą get
- Interakcja ze stroną internetową
- Lokalizowanie pojedynczych elementów
- Lokalizowanie wielu elementów
- Strategie lokalizacyjne – Selenium Python
- Pisanie testów przy użyciu Selenium Python
Strategie lokalizacji
sztuczna inteligencja i inteligentni agenci
- Lokalizowanie pojedynczych elementów –
- find_element_by_id()
- znajdź_element_według_nazwy()
- find_element_by_xpath()
- find_element_by_link_text()
- find_element_by_partial_link_text()
- find_element_by_tag_name()
- find_element_by_class_name()
- find_element_by_css_selector()
- Lokalizowanie wielu elementów –
- find_elements_by_name()
- find_elements_by_xpath()
- find_elements_by_link_text()
- find_element_by_partial_link_text()
- find_elements_by_tag_name()
- find_elements_by_class_name()
- find_elements_by_css_selector()
Czeka
- Wyraźne oczekiwanie
- Niejawne oczekiwanie
najlepszy samochód na świecie
- Podstawy łańcuchów akcji
- Kliknij
- Kliknij i przytrzymaj
- kontekst_kliknięcie
- podwójne kliknięcie
- przeciągnij i upuść
- klawisz_w dół
- klucz_w górę
- move_by_offset
- przenieś_do_elementu
- przenieś_do_elementu_z_przesunięciem
- uwolnienie
- reset_akcji
- wyślij_klucze
Zaawansowany w Selenium Python –
- Obsługa wyjątków – Selenium Python
- Klucze specjalne w Selenium Python
- Jak obsługiwać monity o alerty w Selenium Python?
- Dodawanie i usuwanie plików cookie w Selenium Python
- Jak poruszać się wstecz i do przodu w historii za pomocą Selenium Python?
- Klucze specjalne w Selenium Python
- Asercja w Selenium WebDriver przy użyciu TestNg
- Selenowe sztuczki Pythona
- Model obiektowy strony (POM)
Przykłady projektów
- Whatsapp używający Pythona!
- Automatyzacja przeglądarki za pomocą Selenium
- Zaloguj się do Facebooka za pomocą Pythona
- Automatyzacja postu z okazji urodzin na Facebooku przy użyciu Selenium
- Jak uzyskać dostęp do wyskakującego okna logowania w Selenium za pomocą Pythona
- Bombowiec SMS używający Selenium
Selenium WebDriver
Selenium Webdriver jest rodzicem wszystkich metod i klas używanych w Selenium Python. To siła napędowa Selenium, która pozwala nam wykonywać różne operacje na wielu elementach strony internetowej. Sterownik ma różne metody i atrybuty, których można użyć do automatyzacji testów w Selenium Python. Aby sprawdzić, jak korzystać z webdrivera, odwiedź –
WebElement w Selenium Python
. Różne metody, których można użyć w Selenium Python to –
| metoda | Opis |
|---|---|
| dodaj_cookie | Dodaje plik cookie do bieżącej sesji. |
| z powrotem | Cofa się o jeden krok w historii przeglądarki. |
| zamknąć | Zamyka bieżące okno. |
| utwórz_element_web | Tworzy element sieciowy o określonym element_id. |
| usuń_wszystkie_cookies | Usuń wszystkie pliki cookie w zakresie sesji. |
| usuń_cookie | Usuwa pojedynczy plik cookie o podanej nazwie. |
| wykonaj_async_script | Asynchronicznie Wykonuje JavaScript w bieżącym oknie/ramce. |
| wykonanie_skryptu | Synchronicznie wykonuje JavaScript w bieżącym oknie/ramce. |
| do przodu | Idzie o krok do przodu w historii przeglądarki. |
| pełne okno_ekranowe | Wywołuje specyficzną dla menedżera okien operację „pełnego ekranu”. |
| get_cookie | Zdobądź jedno ciasteczko według nazwy. Zwraca plik cookie, jeśli zostanie znaleziony, Brak, jeśli nie. |
| get_cookies | Zwraca zestaw słowników odpowiadających plikom cookie widocznym w bieżącej sesji. |
| get_log | Pobiera dziennik dla danego typu dziennika |
| get_screenshot_as_base64 | Pobiera zrzut ekranu bieżącego okna jako ciąg zakodowany w standardzie base64, co jest przydatne w przypadku osadzonych obrazów w formacie HTML. |
| get_screenshot_as_file | Zapisuje zrzut ekranu bieżącego okna do pliku obrazu PNG. |
| get_screenshot_as_png | Pobiera zrzut ekranu bieżącego okna jako dane binarne. |
| get_window_position | Pobiera pozycję x, y bieżącego okna. |
| get_window_rect | Pobiera współrzędne x, y okna oraz wysokość i szerokość bieżącego okna. |
| get_window_size | Pobiera szerokość i wysokość bieżącego okna. |
| pośrednio_czekaj | Ustawia lepki limit czasu, aby domyślnie czekać na znalezienie elementu, |
| maksymalizuj_okno | Maksymalizuje bieżące okno używane przez webdriver |
| minimalizuj_okno | Wywołuje operację „minimalizowania” specyficzną dla menedżera okien |
| zrezygnować | Zamyka sterownik i zamyka wszystkie powiązane okna. |
| odświeżać | Odświeża bieżącą stronę. |
| set_page_load_timeout | Ustaw czas oczekiwania na zakończenie ładowania strony, zanim wystąpi błąd. |
| set_script_timeout | Ustaw czas, przez który skrypt powinien czekać podczas wywołania wykonywania_async_script przed zgłoszeniem błędu. |
| ustaw_pozycję_okna | Ustawia położenie x, y bieżącego okna. (okno.moveTo) |
| set_window_rect | Ustawia współrzędne x, y okna oraz wysokość i szerokość bieżącego okna. |
| bieżący_url | Pobiera adres URL bieżącej strony. |
| bieżący_uchwyt_okna | Zwraca uchwyt bieżącego okna. |
| źródło strony | Pobiera źródło bieżącej strony. |
| tytuł | Zwraca tytuł bieżącej strony. |
Element sieciowy Selenu
Elementem może być znacznik, właściwość lub cokolwiek innego, jest to instancja klasy
selenium.webdriver.remote.webelement.WebElement
mvc java
. Po znalezieniu elementu na ekranie za pomocą Selenium możesz chcieć go kliknąć lub znaleźć podelementy itp. Selenium udostępnia metody wokół tego elementu WebElement Selenium. Aby sprawdzić, jak używać obiektu elementu w Selenium, odwiedź –
. Poniżej omówiono różne metody, których można użyć z elementem w Selenium Python –
| Metody elementów | Opis |
|---|---|
| jest zaznaczona() | Metoda is_selected służy do sprawdzania, czy element jest wybrany, czy nie. Zwraca wartość logiczną True lub False. |
| is_displayed() | Metoda is_displayed służy do sprawdzenia, czy element jest widoczny dla użytkownika, czy nie. Zwraca wartość logiczną True lub False. |
| jest włączony() | Metoda is_enabled służy do sprawdzania, czy element jest włączony, czy nie. Zwraca wartość logiczną True lub False. |
| get_właściwość() | Metoda get_property służy do pobierania właściwości elementu, na przykład uzyskiwania właściwości text_length znacznika zakotwiczenia. |
| get_atrybut() | Metoda get_attribute służy do pobierania atrybutów elementu, np. uzyskiwania atrybutu href znacznika zakotwiczenia. |
| send_keys() | Metoda send_keys służy do wysyłania tekstu do dowolnego pola, np. pola wejściowego formularza, a nawet do akapitu znacznika zakotwiczonego itp. |
| Kliknij() | metoda kliknięcia służy do kliknięcia dowolnego elementu, takiego jak znacznik zakotwiczenia, link itp. |
| jasne() | Metoda clear służy do czyszczenia tekstu dowolnego pola, takiego jak pole wejściowe formularza, a nawet akapitu znacznika zakotwiczonego itp. |
| zrzut ekranu() | Metoda zrzutu ekranu służy do zapisania zrzutu ekranu bieżącego elementu do pliku PNG. |
| składać() | Metoda przesyłania służy do przesyłania formularza po wysłaniu danych do formularza. |
| wartość_właściwości_css() | Metoda value_of_css_property służy do pobrania wartości właściwości css elementu. |
| Lokalizacja | Metoda lokalizacji służy do uzyskania lokalizacji elementu na renderowalnym płótnie. |
| zrzut ekranu_as_png | Metoda screen_as_png służy do pobrania zrzutu ekranu bieżącego elementu w postaci danych binarnych. |
| rodzic | Metoda nadrzędna służy do uzyskania wewnętrznego odniesienia do instancji WebDriver, z której znaleziono ten element. |
| rozmiar | Metoda size służy do uzyskania rozmiaru bieżącego elementu. |
| Nazwa znacznika | Metoda tag_name służy do uzyskania nazwy tagu, do którego się odwołujesz. |
| tekst | Metoda tekstowa służy do pobierania tekstu bieżącego elementu. |
| prosto | metoda rect służy do uzyskania słownika z rozmiarem i lokalizacją elementu. |
| zrzut ekranu_as_base64 | Metoda screen_as_base64 służy do pobrania zrzutu ekranu bieżącego elementu w postaci ciągu zakodowanego w standardzie base64. |