usage selenium select class
W poprzednim samouczku zbadaliśmy różne typy instrukcji assert dostępnych w środowisku testów jednostkowych opartych na języku Java i ich aplikacje wraz z próbkami. Powtarzając fakt, że będąc „Inżynierem Testów Automatyzacji”, asercje odgrywają bardzo decydującą i znaczącą rolę w tworzeniu skryptów testowych.
Idąc naprzód z kilkoma nadchodzącymi samouczkami z serii Selenium, powinniśmy się skoncentrować obsługa różnych typów elementów internetowych dostępnych na stronach internetowych . Dlatego w tym samouczku rozważymy „Listy rozwijane” i przećwicz strategie postępowania .
co to jest testowanie regresji w Qa
Zanim przejdziemy do opisu problemu i jego rozwiązania, poświęćmy chwilę na wprowadzenie i zrozumienie dla testowanej aplikacji. Jako próbkę stworzyliśmy plik fikcyjna strona HTML składający się z wielu różnych elementów sieci.
Podstawowymi elementami sieci, z których składa się strona internetowa, są:
- Hiperłącze
- Przycisk
- Upuścić
Proszę odnieść się do poniższej strony internetowej, o której mowa powyżej:
Czego się nauczysz:
- Wyjaśnienie testowanej aplikacji
- Scenariusz do zautomatyzowania
- Kod WebDriver przy użyciu Selenium Select Class
- Opis kodu
- Wniosek
- rekomendowane lektury
Wyjaśnienie testowanej aplikacji
Zaprojektowaliśmy stronę internetową w taki sposób, aby zawierała kilka podstawowych typów elementów internetowych.
- Hiperłącze : Dwa hiperłącza, mianowicie „Google” i „abodeQA”, przekierowują użytkownika odpowiednio do „https://www.google.co.in/” i „http://www.abodeqa.com/” w przypadku kliknięcia.
- Upuścić : Utworzono trzy listy rozwijane do wybierania kolorów, owoców i zwierząt, których wartość jest już ustawiona jako domyślna.
- Przycisk : Przycisk „wypróbuj” został utworzony, aby wyświetlić wyskakujące okienko z przyciskiem OK i Anuluj po kliknięciu zdarzenia.
Kolejny jest kod HTML użyty do stworzenia wyżej wymienionej strony internetowej:
Testing Select Class Red Green Yellow Grey Apple Orange Mango Lime Select Elephant Mouse Dog Click the button to display a confirm box.
Try it function myFunction() { confirm('Press a button!'); }
Scenariusz do zautomatyzowania
- Uruchom przeglądarkę internetową i otwórz stronę internetową
- Kliknij hiperłącze „Google”
- Wróć do oryginalnej strony internetowej
- Wybierz menu „Zielone” w kolorze
- Wybierz „Pomarańcze” z menu owoców
- Wybierz „Słoń” z listy zwierząt
Kod WebDriver przy użyciu Selenium Select Class
Zwróć uwagę, że do tworzenia skryptów będziemy używać projektu „Learning_Selenium” utworzonego w poprzednim samouczku.
Krok 1: Utwórz nową klasę Java o nazwie „HandlingDropDown” w projekcie „Learning_Selenium”.
Krok 2: Skopiuj i wklej poniższy kod w klasie „HandlingDropDown.java”.
Poniżej znajduje się skrypt testowy odpowiadający powyższemu scenariuszowi:
import static org.junit.Assert.*; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.support.ui.Select; /** * class description */ public class HandlingDropDown { WebDriver driver; /** * Set up browser settings and open the application */ @Before public void setUp() { driver=new FirefoxDriver(); // Opened the application driver.get('file:///F:/Work/Blogs/testingstuff/DemoWebAlert.html'); driver.manage().window().maximize(); } /** * Test to select the dropdown values * @throws InterruptedException */ @Test public void testSelectFunctionality() throws InterruptedException { // Go to google driver.findElement(By.linkText('Google')).click(); // navigate back to previous webpage driver.navigate().back(); Thread.sleep(5000); // select the first operator using 'select by value' Select selectByValue = new Select(driver.findElement(By.id('SelectID_One'))); selectByValue.selectByValue('greenvalue'); Thread.sleep(5000); // select the second dropdown using 'select by visible text' Select selectByVisibleText = new Select (driver.findElement(By.id('SelectID_Two'))); selectByVisibleText.selectByVisibleText('Lime'); Thread.sleep(5000); // select the third dropdown using 'select by index' Select selectByIndex = new Select(driver.findElement(By.id('SelectID_Three'))); selectByIndex.selectByIndex(2); Thread.sleep(5000); } /** * Tear down the setup after test completes */ @After public void tearDown() { driver.quit(); } }
Opis kodu
Import wyciągów
- import org. openqa.selenium.support.ui.Select - Zaimportuj ten pakiet przed utworzeniem skryptu. Pakiet odwołuje się do klasy Select, która jest wymagana do obsługi listy rozwijanej.
Tworzenie instancji obiektu dla klasy Select
SelectByValue = new Select (driver.findElement (By.id („SelectID_One”)));
Tworzymy zmienną referencyjną dla klasy Select i tworzymy jej instancję przy użyciu klasy Select i identyfikatora listy rozwijanej.
Identyfikator lub wartość lokalizatora listy rozwijanej można znaleźć za pomocą technik omówionych we wstępnych samouczkach (przy użyciu Selenium IDE i firebug).
Zwróć uwagę, że identyfikator listy rozwijanej można znaleźć poniżej:
Krok 1: Większość lub prawie wszystkie elementy listy rozwijanej są zdefiniowane w tagu i mają wiele wartości (wartości, które można ustawić w menu), które są zdefiniowane pod tagami.
Ustawienie wartości w menu za pomocą selectByValue () metoda
selectByValue.selectByValue („greenvalue”);
W powyższym poleceniu java wybieramy wartość „green” z listy rozwijanej za pomocą selectByValue () i parametryzując ją tekstem obecnym w atrybucie value.
Ustawianie wartości w menu rozwijanym za pomocą metody selectByVisibleText ()
selectByValue.selectByVisibleText („Wapno”);
W powyższym poleceniu java wybieramy wartość „Lime” z listy rozwijanej za pomocą selectByVisibleText () i sparametryzowanie go tekstem obecnym w interfejsie użytkownika lub tekstem znajdującym się między tagiem otwierającym i zamykającym.
Ustawienie wartości w menu za pomocą selectByIndex () metoda
selectByValue.selectByIndex („2”);
W powyższym poleceniu java wybieramy trzecią wartość z rozwijanego menu za pomocą selectByIndex () i sparametryzowanie go wartością indeksu elementu, który ma zostać wybrany z listy rozwijanej.
Zwróć uwagę, że wartość indeksu zaczyna się od „0”.
Wniosek
W tym samouczku staraliśmy się zapoznać Cię z klasą Select WebDriver, która jest używana do obsługi elementów rozwijanych obecnych na stronie internetowej. Poinformowaliśmy Cię również o metodach, których można użyć do wypełnienia wartości na liście rozwijanej.
Oto podsumowanie artykułu:
- Klasa Select WebDriver jest używana do obsługi elementów rozwijanych obecnych na stronie internetowej.
- Przed właściwym skryptowaniem musimy zaimportować pakiet, aby móc utworzyć skrypt WebDriver do obsługi listy rozwijanej i udostępnienia klasy Select.
- import org. openqa.selenium.support.ui.Select;
- Tworzymy zmienną referencyjną dla klasy Select i tworzymy jej instancję przy użyciu klasy Select i identyfikatora listy rozwijanej.
- Wybierz selectByValue = new Select (driver.findElement (By.id („SelectID_One”)));
- Identyfikator lub wartość lokalizatora spadku można znaleźć za pomocą Selenium IDE i firebug.
- W idealnym przypadku istnieją trzy sposoby wyboru żądanej wartości z listy rozwijanej spośród wymienionych.
- selectByValue ()
- selectByVisibleText ()
- selectByIndex ()
- Następujące polecenie java służy do wybierania „zielonego” koloru z listy rozwijanej. Zwróć uwagę, że wartość w menu rozwijanym jest wybierana przy użyciu rozszerzenia selectByValue ()
- selectByValue („zielona wartość”);
- Następujące polecenie java służy do wybierania owocu „Wapna” z listy rozwijanej. Zwróć uwagę, że wartość w menu rozwijanym jest wybierana przy użyciu rozszerzenia selectByVisibleText ()
- selectByVisibleText („Wapno”);
- Następujące polecenie java służy do wybierania trzeciej wartości spośród wszystkich dostępnych opcji wymienionych na liście rozwijanej. Zwróć uwagę, że wartość w menu rozwijanym jest wybierana przy użyciu rozszerzenia selectByIndex ()
- selectByIndex („2”);
Następny samouczek nr 14 : W nadchodzącym samouczku omówimy różne typy poleceń w WebDriver, takich jak isSelected (), isEnabled () i isDispalyed () te zwracają wartość logiczną w odniesieniu do obecności określonego elementu sieci Web.
Do tego czasu bądź na bieżąco i zautomatyzuj rozwijanie listy za pomocą narzędzia WebDriver - „Wybierz klasę”.
rekomendowane lektury
- Jak zlokalizować elementy w przeglądarkach Chrome i IE do tworzenia skryptów selenium - Samouczek Selenium # 7
- Cucumber Selenium Tutorial: Integracja Cucumber Java Selenium WebDriver
- Sprawdź widoczność elementów sieci Web przy użyciu różnych typów poleceń WebDriver - samouczek Selenium nr 14
- Dogłębne samouczki dotyczące Eclipse dla początkujących
- Wprowadzenie do Selenium WebDriver - samouczek Selenium # 8
- Jak używać selektora CSS do identyfikowania elementów sieci Web dla skryptów 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