Aby wykonać dowolną czynność, pierwszazadaniem jest zidentyfikowanie grupy elementów. Generalnie podczas pracy z , może być konieczne wybranie niektórych wartości z listy rozwijanej, a także wykonanie innych działań i ich walidacja. Tak więc, poprowadzę Cię w zrozumieniu, czym jest klasa Select w Selenium WebDriver i jak to zrobić Wybierz wartość z listy rozwijanej w Selenium WebDriver.
Temat będę omawiać w następującej kolejności:
- Wybierz klasę w Selenium WebDriver
- Różne polecenia Select
- Jak działa polecenie Multiple SELECT?
- Usuń wybór metod
- Jak wybrać opcję z rozwijanego menu?
Więc zaczynajmy.
Wybierz klasę w Selenium WebDriver
Plik Wybierz klasa to klasa, która w zasadzie zapewnia implementację znacznika HTML SELECT. Tag Select udostępnia metodom pomocniczym opcje zaznaczania i usuwania zaznaczenia. Tę klasę można znaleźć pod Selenium’s Support.UI.Select pakiet. Select jest w rzeczywistości zwykłą klasą, więc jej obiekt jest również tworzony przez słowo kluczowe Nowy a także określa lokalizację elementu web.
jak stworzyć sesję w java
Składnia:
Wybierz oSelect = new Select ()
Wyświetli się błąd z prośbą o dodanie argumentów do polecenia. Więc określ lokalizację elementu WWW za pomocą .
Wyraźnie to stwierdza Wybierz prosi o obiekt typu elementu dla swojego konstruktora.
Po tym,gdy zdobędziesz obiekt Wybierz klasę , możesz uzyskać dostęp do wszystkich metod znajdujących się w WYBIERZ klasę wpisując oWybierz + kropka który zapewni wszystkie metody w klasie Select. Wybierz dowolną metodę zgodnie ze swoim przypadkiem testowym.
A teraz przejdźmy dalej, aby poznać różne metody w tej klasie Select.
Wybierz klasę w Selenium WebDriver: Różne polecenia Select
Poniżej przedstawiono najczęściej używane metody radzenia sobie z rozwijaną listą.
jeden. selectByVisibleText: selectByVisibleText (String arg0): void
Dzięki tej metodzie bardzo łatwo jest wybrać lub zaznaczyć opcję podaną pod dowolnymi listami rozwijanymi i polami wielokrotnego wyboru. Pobiera parametr String, który jest jednym z parametrów wartość elementu Wybierz i nic nie zwraca.
Składnia: oSelect.selectByVisibleText („tekst”)
Przykład:
Wybierz oSelect = new Select (driver.findElement (By.id ('search-box'))) oSelect.selectByVisibleText ('Blog')
2 . selectByIndex: selectByIndex (int arg0): void
Ta metoda jest prawie podobna do metody „selectByVisibleText”, ale jedyna różnica polega na tym, że użytkownik musi podać numer indeksu dla opcji, a nie tekst opcji. Pobiera parametr całkowity, który jest wartością indeksu Wybierz element i nic nie zwraca.
Synatx: oSelect.selectByIndex (int)
Przykład:
Wybierz oSelect = new Select (driver.findElement (By.id ('Seacrch-box'))) oSelect.selectByIndex (2)
3. selectByValue: selectByValue (String arg0): void
Ta metoda jest podobna do tego, co omówiłem wcześniej, jedyną różnicą w tej metodzie jest to, że pyta o wartość opcji, a nie o tekst opcji lub indeks. Pobiera parametr typu String, który jest jedną z wartości Wybierz element i nic nie zwraca.
Składnia: oSelect.selectByValue („tekst”)
Przykład:
Wybierz oSelect = new Select (driver.findElement (By.id ('Search-box'))) oSelect.selectByValue ('Selenium Certification training')
Cztery. getOptions: getOptions (): lista
Ta metoda pomaga uzyskać wszystkie opcje należące do tagu Select. Nie przyjmuje żadnego parametru i zwraca Lista .
Składnia: oSelect.getOptions ()
Przykład:
Select oSelect = new Select (driver.findElement (By.id ('Search-box'))) List elementCount = oSelect.getOptions () System.out.println (elementCount.size ())
Przejdźmy więc do następnego tematu i poznajmy metody wyboru wielokrotnego
Wybierz klasę w Selenium WebDriver: Jak działa polecenie Multiple SELECT?
Atrybut wielokrotnego wyboru jest wyrażeniem logicznym. Gdy jest obecny, określa, że można wybrać wiele opcji jednocześnie. Te opcje różnią się dla różnych systemów operacyjnych i przeglądarek, a mianowicie:
- Dla Windowsa: Przytrzymaj przycisk sterowania (ctrl), aby wybrać wiele opcji.
- Dla Maca: Przytrzymaj przycisk polecenia, aby wybrać wiele opcji.
Korzystanie z pól wyboru zamiast różnych sposobów wykonywania operacji jest przyjazne dla użytkownika, ponieważ trzeba poinformować użytkownika, że dostępnych jest wiele opcji. Istnieje metoda, która faktycznie pomaga określić, że możesz użyć wielu opcji do wyboru.
isMultiple
isMultiple (): boolean - Ta metoda określa, czy element SELECT obsługuje wiele opcji wyboru w tym samym czasie, czy nie. Ta metoda nie przyjmuje niczego, ale zwraca wartość logiczną (prawda / fałsz).
Składnia: oSelect.isMultiple ()
Przykład:
Select oSelect = new Select (driver.findElement (By.id (Element_ID))) oSelect.selectByIndex (index) oSelect.selectByIndex (index) // Lub może być użyty jako oSelect.selectByVisibleText (text) oSelect.selectByVisibleText (text) / / Lub można użyć jako oSelect.selectByValue (wartość) oSelect.selectByValue (wartość)
Wybierz klasę w Selenium WebDriver: Usuń wybór metod
Po zaznaczeniu określonego elementu na stronie internetowej istnieje kilka metod, które pomogą w usunięciu zaznaczenia tego elementu. Ale jedynym wyzwaniem w tych metodach jest to, że nie działają Upuścić i pracuj tylko dla Wielokrotny wybór elementy.
Jeśli chcesz odznaczyć dowolną wcześniej wybraną opcję, możesz to zrobić za pomocą jednej z nich
- odznacz wszystkie ()
- deselectByIndex
- deselectByValue
- deselectByVisibletext
Rozumiemy szczegółowo metody.
odznacz wszystkie (): Czyści wszystkie wybrane wpisy. Jest to ważne tylko wtedy, gdy element rozwijany obsługuje wiele wyborów.
Przykład: oWybierz. odznacz wszystkie ()
deselectByIndex (): Toodznacza opcję przy danym indeksie.
Przykład: oWybierz. deselectByIndex (2)
- deselectByValue (): Ta metoda pomaga w usuwaniu zaznaczenia opcji, której „ wartość ”Atrybut pasuje do określonego parametru.
Przykład: oWybierz. deselectByValue („13”)
- deselectByVisibletext (): Ta metoda pomaga w usuwaniu zaznaczenia opcji wyświetlającej tekst pasujący do parametru.
Wybierz klasę w Selenium WebDriver: Jak wybrać opcję z rozwijanego menu?
Pomogę wam zrozumieć, jak to się dzieje Wybierz działa na przykładzie czasu rzeczywistego.
W tym przypadku rozważę pracę nad słynną witryną e-commerce facebook.com.
- Najpierw dodaj biblioteki Java do swojego systemu.
- IDE, w którym możesz napisać fragment kodu. Rozważę pracę nad Eclipse IDE, ponieważ jest ono przyjazne dla użytkownika.
- Dodaj biblioteki Selenium do projektu.
- Uzyskaj adres URL strony internetowej.
- Wykonaj żądane czynności z listy rozwijanej.
Wyjaśniłem to za pomocą 2 różnych programów. Pierwszy program pomoże Ci wybrać wartość z listy rozwijanej, a drugi program pomoże wykonać różne operacje na liście rozwijanej.
- Najpierw ustaw .
- Uzyskaj adres URL Facebook .
- Stwórz obiektu i znajdź element za pomocą lokalizatorów elementów.
- Wybierz obiekt WebElement za pomocą metod Select.
- Zakończ wykonywanie sterownika.
Odnieś się do tego kodu:
pakiet Edurekaa import org.junit.Test import org.openqa.selenium.By import org.openqa.selenium.JavascriptExecutor import org.openqa.selenium.WebDriver import org.openqa.selenium.WebElement import org.openqa.selenium.river.Chrome import org.openqa.selenium.support.ui.Select public class SelectClass {@Test public static void main (String [] args) throws InterruptedException {System.setProperty ('webdriver.chrome.driver', 'C: UsersVaishnaviDesktopchromedriver_win32 (2) chromedriver.exe ') WebDriver driver = nowy ChromeDriver () driver.get (' http://www.facebook.com ') driver.manage (). window (). maximize () //js.executeScript('window. scrollBy (0,300) ') WebElement month_dropdown = driver.findElement (By.id (' day ')) Select oSelect = new Select (month_dropdown) oSelect.selectByIndex (3) Thread.sleep (3000) WebElement year_yy = driver.findElement (By .id ('year')) Select year_y = new Select (year_yy) year_y.selectByValue ('2000') Thread.sleep (3000) WebElement month_m = driver.findElement (By.id ('month')) Sele ct month_d1 = new Select (month_m) month_d1.selectByVisibleText ('Jul') driver.quit ()}}
Drugi program zajmuje się wykonywaniem czynności na liście rozwijanej. W takim przypadku wypiszmy liczbę miesięcy, a także nazwiska.
- Utwórz listę elementów WebElements i wybierz opcje.
- Wyświetl menu rozmiaru miesiąca.
- Wydrukuj rozmiar listy miesięcy.
- Utwórz kolejny obiekt WebElement to i uzyskaj nazwę miesiąca.
- Wydrukuj liczbę, używając pętli for.
- Zakończ wykonywanie sterownika.
pakiet Edurekaa import java.util.List import org.junit.Test import org.openqa.selenium.By import org.openqa.selenium.JavascriptExecutor import org.openqa.selenium.WebDriver import org.openqa.selenium.WebElement import org.openqa .selenium.chrome.ChromeDriver import org.openqa.selenium.support.ui.Select public class SelectClass2 {@Test public static void main (String [] args) rzuca InterruptedException {System.setProperty ('webdriver.chrome.driver', ',' C: UsersVaishnaviDesktopchromedriver_win32 (2) chromedriver.exe ') Sterownik WebDriver = nowy ChromeDriver () JavascriptExecutor js = (JavascriptExecutor) sterownik driver.get (' http://www.facebook.com ') driver.manage (). Window () .maximize () //js.executeScript('window.scrollBy(0,300) ') WebElement month_dropdown = driver.findElement (By.id (' month ')) Wybierz oSelect = new Select (month_dropdown) List & ampampltWebElement & ampampgt month_list = oSelect.getOs ) int total_month = month_list.size () System.out.println ('Całkowita liczba to' + total_month) for (WebElement ele: month_list) {String month_name = ele.getText () System.out.println ('Months are' + month_name)} driver.quit ()}}
Teraz tym razem kończymy ten blog „Jak wybrać z listy rozwijanej w Selenium WebDriver”. Mam nadzieję, że podobał wam się ten artykuł i zrozumieliście, jak działa klasa Select w selenie.
Teraz, gdy zrozumiałeś, jak wybrać wartość z listy rozwijanej za pomocą Selenium, sprawdź autorstwa Edureka, zaufanej firmy zajmującej się edukacją online, z siecią ponad 650 000 zadowolonych uczniów rozsianych po całym świecie. Ten kurs ma na celu przedstawienie wszystkich funkcji Selenium i jego znaczenia w testowaniu oprogramowania.
Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy „Jak wybrać z listy rozwijanej w Selenium WebDriver”, a my skontaktujemy się z Tobą.