Jak wybrać wartość z DropDown za pomocą Selenium Webdriver

Spisie treści:

Anonim

W tym samouczku nauczymy się, jak obsługiwać DropDown w selenie i operacjach wielokrotnego wyboru.

Wybierz Class in Selenium

Wybierz klasę w Selen to metoda wykorzystywana do realizacji tag HTML SELECT. Tag html select udostępnia metody pomocnicze do wybierania i odznaczania elementów. Klasa Select jest zwykłą klasą, więc słowo kluczowe New służy do tworzenia obiektu i określa lokalizację elementu WWW.

Wybierz opcję z pola rozwijanego

Poniżej przedstawiono proces krok po kroku, jak wybrać wartość z listy rozwijanej w Selenium:

Przed obsługą rozwijanego menu w Selenium i kontrolowaniem rozwijanych pól, musimy zrobić następujące dwie rzeczy:

  1. Zaimportuj pakiet org.openqa.selenium.support.ui.Select
  2. Utwórz wystąpienie rozwijanego pola jako obiektu, Wybierz w Selenium WebDriver

Na przykład przejdź do strony rejestracji Mercury Tours (http://demo.guru99.com/test/newtours/register.php) i zwróć uwagę na rozwijaną listę „Kraj”.

Krok 1

Zaimportuj pakiet „Wybierz”.

Krok 2

Zadeklaruj element rozwijany jako instancję klasy Select. W poniższym przykładzie nazwaliśmy tę instancję jako „drpCountry”.

Krok 3

Możemy teraz zacząć kontrolować „drpCountry”, używając dowolnej z dostępnych metod Select, aby wybrać menu rozwijane Selenium. Poniższy przykładowy kod wybierze opcję „ANTARKTYKA”.

Wybieranie elementów w wielu elementach SELECT

Możemy również użyć metody selectByVisibleText () przy wybieraniu wielu opcji w elemencie SELECT typu multi. Jako przykład weźmiemy http://jsbin.com/osebed/2 jako podstawowy adres URL. Zawiera rozwijane pole, które pozwala na wiele wyborów jednocześnie.

Poniższy kod wybierze dwie pierwsze opcje za pomocą metody selectByVisibleText ().

Wybierz Metody

Poniżej przedstawiono najczęstsze metody używane na liście rozwijanej Selenium.

metoda Opis
selectByVisibleText () i deselectByVisibleText () Przykład:
  • Zaznacza / odznacza opcję, która wyświetla tekst pasujący do parametru.
  • Parametr : dokładnie wyświetlany tekst danej opcji
selectByValue () i deselectByValue () Przykład:
  • Zaznacza / usuwa zaznaczenie opcji, której atrybut „wartość” pasuje do określonego parametru.
  • Parametr : wartość atrybutu „wartość”
  • Pamiętaj, że nie wszystkie opcje rozwijane mają ten sam tekst i „wartość”, jak w przykładzie poniżej.
selectByIndex () i deselectByIndex () Przykład:
  • Zaznacza / odznacza opcję pod podanym indeksem.
  • Parametr : indeks opcji do wyboru.
isMultiple () Przykład:
  • Zwraca wartość TRUE, jeśli rozwijany element pozwala na wiele wyborów jednocześnie; FAŁSZ, jeśli inaczej.
  • Żadne parametry nie są potrzebne
deselectAll () Przykład:
  • Czyści wszystkie wybrane wpisy. Ma to zastosowanie tylko wtedy, gdy element rozwijany obsługuje wiele wyborów.
  • Żadne parametry nie są potrzebne

Oto pełny kod

pakiet newpackage;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import org.openqa.selenium.support.ui.Select;import org.openqa.selenium.By;public class accessDropDown {public static void main (String [] args) {System.setProperty ("webdriver.gecko.driver", "C: \\ geckodriver.exe");String baseURL = "http://demo.guru99.com/test/newtours/register.php";Sterownik WebDriver = nowy FirefoxDriver ();driver.get (baseURL);Wybierz drpCountry = new Select (driver.findElement (By.name ("country")));drpCountry.selectByVisibleText ("ANTARKTYKA");// Wybieranie elementów w wielu elementach SELECTdriver.get („http://jsbin.com/osebed/2”);Select owoce = new Select (driver.findElement (By.id ("owoce")));owoce.selectByVisibleText ("Banan");owoce.selectByIndex (1);}}

Podsumowanie

Element Komenda Opis
Upuścić pudło selectByVisibleText () / deselectByVisibleText () zaznacza / odznacza opcję według wyświetlanego tekstu
selectByValue () / deselectByValue () zaznacza / odznacza opcję według wartości jej atrybutu „wartość”
selectByIndex () / deselectByIndex () zaznacza / odznacza opcję według jej indeksu
isMultiple () zwraca TRUE, jeśli rozwijany element pozwala na wielokrotny wybór na raz; FAŁSZ, jeśli inaczej
odznacz wszystkie() usuwa zaznaczenie wszystkich wcześniej wybranych opcji

Aby kontrolować listy rozwijane, należy najpierw zaimportować pakiet org.openqa.selenium.support.ui.Select, a następnie utworzyć instancję Select.