check visibility web elements using various types webdriver commands selenium tutorial 14
Jak sprawdzić widoczność elementów sieci za pomocą różnych typów poleceń pętli i poleceń warunkowych w WebDriver:
Wcześniej w serii omawialiśmy Klasa Select WebDriver który jest używany głównie do obsługi elementów internetowych, takich jak listy rozwijane i wybierania różnych opcji z list rozwijanych.
Idąc naprzód w Seria selenu , będziemy dyskutować o różnych typach pętli i poleceń warunkowych w WebDriver, takich jak isSelected (), isEnabled () i isDispalyed (). Te metody służą do określania zakresu widoczności elementów sieci.
Zacznijmy więc od krótkiego wprowadzenia - WebDriver ma specyfikację W3C, która szczegółowo określa informacje o różnych preferencjach widoczności w oparciu o typy elementów sieci, na których mają być wykonywane działania.
WebDriver ułatwia użytkownikowi sprawdzanie widoczności elementów sieci za pomocą następujących metod. Tymi elementami sieci mogą być przyciski, pola upuszczania, pola wyboru, przyciski opcji, etykiety itp.
- isDisplayed ()
- jest zaznaczony()
- jest włączony()
Dla lepszego zrozumienia omówmy wyżej wymienione metody z przykładami kodu.
Jako przykład użylibyśmy „google.com” jako testowanej aplikacji oraz projektu „Learning_Selenium” utworzonego w poprzednich samouczkach do generowania skryptów.
Scenariusz do zautomatyzowania
- Uruchom przeglądarkę internetową i otwórz testowaną aplikację - http://google.com
- Zweryfikuj tytuł strony internetowej
- Sprawdź, czy jest wyświetlany przycisk „Szukaj w Google”
- Wprowadź słowo kluczowe w polu tekstowym „Wyszukiwarka Google”, za pomocą którego chcielibyśmy wysłać żądanie
- Sprawdź, czy przycisk „Szukaj” jest wyświetlany i włączony
- Na podstawie widoczności przycisku Szukaj kliknij przycisk wyszukiwania
Czego się nauczysz:
Kod WebDriver
Krok 1: Utwórz nową klasę Java o nazwie „VisibilityConditions” w projekcie „Learning_Selenium”.
zapytania sql do ćwiczenia z odpowiedziami
Krok 2: Skopiuj i wklej poniższy kod w klasie „VisibilityConditions.java”.
Poniżej znajduje się skrypt testowy będący odpowiednikiem powyższego scenariusza:
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; public class VisibilityConditions { /** * @param args */ public static void main(String() args) { // objects and variables instantiation WebDriver driver = new FirefoxDriver(); String appUrl = 'https://google.com'; // launch the firefox browser and open the application url driver.get(appUrl); // maximize the browser window driver.manage().window().maximize(); // declare and initialize the variable to store the expected title of the webpage. String expectedTitle = 'Google'; // fetch the title of the web page and save it into a string variable String actualTitle = driver.getTitle(); // compare the expected title of the page with the actual title of the page and print the result if (expectedTitle.equals(actualTitle)) { System.out.println('Verification Successful - The correct title is displayed on the web page.'); } else { System.out.println('Verification Failed - An incorrect title is displayed on the web page.'); } // verify if the “Google Search” button is displayed and print the result boolean submitbuttonPresence=driver.findElement(By.id('gbqfba')).isDisplayed(); System.out.println(submitbuttonPresence); // enter the keyword in the “Google Search” text box by which we would want to make the request WebElement searchTextBox = driver.findElement(By.id('gbqfq')); searchTextBox.clear(); searchTextBox.sendKeys('Selenium'); // verify that the “Search button” is displayed and enabled boolean searchIconPresence = driver.findElement(By.id('gbqfb')).isDisplayed(); boolean searchIconEnabled = driver.findElement(By.id('gbqfb')).isEnabled(); if (searchIconPresence==true && searchIconEnabled==true) { // click on the search button WebElement searchIcon = driver.findElement(By.id('gbqfb')); searchIcon.click(); } // close the web browser driver.close(); System.out.println('Test script executed successfully.'); // terminate the program System.exit(0); } }
Opis kodu
Poniżej przedstawiono sposoby sprawdzania obecności elementów internetowych na stronie internetowej.
boolean submitbuttonPresence = driver.findElement (By.id ( 'Uwierzyć' )). isDisplayed ();
isDispalyed ()
isDisplayed () to metoda używana do sprawdzania obecności elementu WWW na stronie internetowej. Metoda ma wynikać z wartości logicznej przy każdym sukcesie i niepowodzeniu. Metoda zwraca wartość „true”, jeśli określony element WWW znajduje się na stronie internetowej oraz wartość „false”, jeśli element web nie jest obecny na stronie internetowej.
Zatem powyższy fragment kodu weryfikuje obecność przycisku przesyłania na stronie internetowej Google i zwraca wartość true, jeśli przycisk przesyłania jest obecny i widoczny, w przeciwnym razie zwraca wartość fałszywą, jeśli przycisk przesyłania nie jest obecny na stronie internetowej.
boolean searchIconEnabled = driver.findElement (By.id ( „Gbqfb” )).jest włączony();
Metoda zajmuje się widocznością wszelkiego rodzaju elementów sieci, a nie tylko ograniczeniem do jednego typu.
jest włączony()
isEnabled () to metoda używana do sprawdzania, czy element sieciowy jest włączony, czy wyłączony na stronie internetowej. Podobnie jak metoda isDisplayed (), jest ona zaprojektowana tak, aby przy każdym sukcesie i niepowodzeniu zwracać wartość logiczną. Metoda zwraca wartość „true”, jeśli określony element WWW jest włączony na stronie internetowej oraz wartość „false”, jeśli element web nie jest włączony (stan wyłączony) na stronie internetowej.
W ten sposób powyższy fragment kodu weryfikuje, czy przycisk przesyłania jest włączony, czy nie, i zwraca wartość logiczną w zależności od wyniku.
Metoda isEnabled () jest istotna w scenariuszach, w których chcemy się upewnić, że tylko jeśli „Warunek A” jest spełniony, to element (głównie przycisk) jest aktywny. Zobacz poniższą ilustrację dla tego samego.
Na powyższym rysunku przycisk Zarejestruj się jest aktywny tylko wtedy, gdy zaznaczone jest pole wyboru umowy.
Podobnie jak w przypadku powyższych metod, mamy metodę określaną jako „isSelected ()”, która sprawdza, czy określony element sieciowy jest wybrany, czy nie.
boolean searchIconSelected = driver.findElement (By.id ( 'męski' )).jest zaznaczony();
najlepsze oprogramowanie do czyszczenia komputera 2015
jest zaznaczony()
isSelected () to metoda używana do sprawdzenia, czy element web jest zaznaczony, czy nie. Metoda isSelected () jest używana głównie z przyciskami opcji, listami rozwijanymi i polami wyboru. Analogicznie do powyższych metod, ma na celu uzyskanie wartości logicznej przy każdym sukcesie i porażce.
W ten sposób powyższy fragment kodu weryfikuje, czy przycisk opcji męski jest wybrany, czy nie, i zwraca wartość logiczną w zależności od wyniku. Zobacz poniższy obraz dla tego samego.
Wniosek
W tym samouczku staraliśmy się zapoznać Cię z operacjami pętli i operacjami warunkowymi WebDriver. Te metody warunkowe często zajmują się prawie wszystkimi typami opcji widoczności elementów sieci.
Podsumowanie artykułu:
- WebDriver ma specyfikację W3C, która wyszczególnia informacje o różnych preferencjach widoczności w oparciu o typy elementów sieci.
- isDisplayed () to metoda używana do sprawdzania obecności elementu WWW na stronie internetowej. Metoda zwraca wartość „true”, jeśli określony element WWW znajduje się na stronie internetowej oraz wartość „false”, jeśli element web nie jest obecny na stronie internetowej.
- isDisplayed () jest w stanie sprawdzić obecność wszystkich dostępnych elementów sieci.
- isEnabled () to metoda używana do sprawdzania, czy element sieciowy jest włączony, czy wyłączony na stronie internetowej.
- isEnabled () jest używana głównie z przyciskami.
- isSelected () to metoda używana do sprawdzania, czy element web jest zaznaczony, czy nie. Metoda isSelected () jest używana głównie z przyciskami radiowymi, listami rozwijanymi i polami wyboru.
Następny samouczek nr 15 : Podczas pracy nad aplikacjami internetowymi często jesteśmy przekierowywani na inne strony internetowe, odświeżając całą stronę i ponownie ładując nowe elementy. Czasami mogą być również połączenia Ajax. W ten sposób można zauważyć opóźnienie podczas ponownego ładowania stron internetowych i odzwierciedlania elementów sieci. Tak więc nasz następny samouczek w linii dotyczy radzenia sobie z takimi opóźnieniami czasu przy użyciu niejawnych i jawnych czekań.
Uwaga dla Czytelników : Do tego czasu czytelnik może zautomatyzować i przetestować zakres widoczności elementów sieci, korzystając z metod WebDriver.
rekomendowane lektury
- Wprowadzenie do Selenium WebDriver - samouczek Selenium # 8
- Wdrożenie naszego pierwszego skryptu WebDriver - Selenium WebDriver Tutorial # 10
- Jak zlokalizować elementy w przeglądarkach Chrome i IE do tworzenia skryptów selenium - Samouczek Selenium nr 7
- Cucumber Selenium Tutorial: Cucumber Java Selenium Integracja WebDriver
- WebDriver Cała konfiguracja i instalacja z Eclipse - samouczek Selenium # 9
- Jak używać selektora CSS do identyfikacji elementów sieci Web w skryptach selenium - samouczek Selenium nr 6
- Efektywne skrypty Selenium i scenariusze rozwiązywania problemów - samouczek Selenium nr 27
- Debugowanie skryptów Selenium za pomocą dzienników (samouczek Log4j) - samouczek Selenium # 26