Jak vybrat hodnotu z rozevíracího seznamu v Selenium WebDriver



Tento článek vám pomůže pochopit, co je třída Select v Selenium WebDriver, a také to, jak vybrat hodnotu z rozevíracího seznamu v Selenium WebDriver

Chcete-li provést jakoukoli akci, prvníúkolem je identifikovat skupinu prvků. Obecně při práci s , možná budete muset vybrat některé hodnoty z rozevíracího seznamu a také provést další aktivity a ověřit je. Provedu vás tedy při porozumění tomu, co je třída Select v Selenium WebDriver a jak na to Vybrat hodnota z rozevíracího seznamu v Selenium WebDriver.

podřetězec v příkladu serveru sql

Budu diskutovat o tomto tématu v tomto pořadí:





Pojďme na to.

Vyberte třídu v selenu WebDriver

The Vybrat třída je třída, která v zásadě zajišťuje implementaci značky HTML SELECT. Značka Select poskytuje pomocným metodám možnosti výběru a zrušení výběru. Tuto třídu najdete pod Selenium's Support.UI. Vyberte balík. Select je ve skutečnosti běžná třída, takže její objekt je také vytvořen klíčovým slovem Nový a také určuje umístění webového prvku.



Syntax:

Vybrat oVybrat = nový Vybrat ()

Vyvolá chybu s požadavkem na přidání argumentů do příkazu. Určete tedy umístění webového prvku pomocí .

Jasně to říká Vybrat požaduje pro svůj konstruktor objekt typu prvku.



Po tomto,jakmile dostanete předmět Vyberte třídu , máte přístup ke všem metodám, které se nacházejí v souboru VYBRAT třídy zadáním o Vyberte + tečka který poskytne všechny metody ve třídě Select. Vyberte libovolnou metodu podle testovacího případu.

Pojďme se tedy nyní podívat na další metody v této třídě Select.

Vyberte třídu v selenu WebDriver: Různé příkazy pro výběr

Níže jsou uvedeny nejčastěji používané metody řešení rozevíracího seznamu.

jeden. selectByVisibleText: selectByVisibleText (String arg0): void

Touto metodou je velmi snadné vybrat nebo vybrat možnost danou v rozbalovacích seznamech a více výběrových polích. Trvá parametr řetězce, který je jedním z hodnota prvku Select a nic nevrací.

Syntax: oSelect.selectByVisibleText („text“)

Příklad:

Select oSelect = new Select (driver.findElement (By.id ('search-box'))) oSelect.selectByVisibleText ('Blog')

2 . selectByIndex: selectByIndex (int arg0): neplatné

Tato metoda je téměř podobná metodě „selectByVisibleText“, ale jediný rozdíl zde spočívá v tom, že uživatel musí uvést číslo indexu možnosti, nikoli text možnosti. Trvá celočíselný parametr, který je hodnotou indexu Vyberte prvek a nic nevrací.

Synatx: oSelect.selectByIndex (int)

Příklad:

Select oSelect = new Select (driver.findElement (By.id ('Seacrch-box'))) oSelect.selectByIndex (2)

3. selectByValue: selectByValue (String arg0): void

Tato metoda je opět podobná tomu, o kterém jsem hovořil dříve, jediný rozdíl v této metodě spočívá v tom, že požaduje hodnotu možnosti, spíše text možnosti nebo index. Trvá String parametr, který je jednou z hodnot Vyberte prvek a nic nevrací.

Syntax: oSelect.selectByValue („text“)

Příklad:

Select oSelect = new Select (driver.findElement (By.id ('Search-box'))) oSelect.selectByValue ('Selenium Certification training')

Čtyři. getOptions: getOptions (): Seznam

Tato metoda pomáhá získat všechny možnosti patřící do značky Select. Netrvá žádný parametr a vrátí se Seznam .

Syntax: oSelect.getOptions ()

Příklad:

Select oSelect = new Select (driver.findElement (By.id ('Search-box'))) List elementCount = oSelect.getOptions () System.out.println (elementCount.size ())

Pojďme tedy k dalšímu tématu a naučme se metody Multiple Select

Vyberte třídu v selenu WebDriver: Jak funguje příkaz Multiple SELECT?

Atribut multiple select je logický výraz. Pokud je k dispozici, určuje, že lze vybrat více možností najednou. Tyto možnosti se liší pro různé operační systémy a prohlížeče, jmenovitě:

  • Pro Windows: Podržením ovládacího tlačítka (ctrl) vyberte více možností.
  • Pro Mac: Podržením příkazového tlačítka vyberte více možností.

Je uživatelsky přívětivé používat zaškrtávací políčka místo různých způsobů provádění operací, protože musíte uživatele informovat, že je k dispozici více výběrů. Existuje metoda, která ve skutečnosti pomáhá určit, že můžete použít více možností výběru.

isMultiple

isMultiple (): boolean - Tato metoda říká, zda prvek SELECT podporuje více možností výběru najednou nebo ne. Tato metoda nepřijímá nic, ale vrací logickou hodnotu (true / false).

Syntax: oSelect.isMultiple ()

Příklad:

Select oSelect = new Select (driver.findElement (By.id (Element_ID))) oSelect.selectByIndex (index) oSelect.selectByIndex (index) // Nebo lze použít jako oSelect.selectByVisibleText (text) oSelect.selectByVisibleText (text) / / Nebo lze použít jako oSelect.selectByValue (hodnota) oSelect.selectByValue (hodnota)

Vyberte třídu v selenu WebDriver: metody DeSelect

Když vyberete konkrétní prvek na webové stránce, existuje několik metod, které pomohou při zrušení výběru tohoto prvku. Jedinou výzvou v těchto metodách však je, že nepracují DropDown a pracovat pouze pro Více násobný výběr elementy.

V případě, že chcete zrušit výběr jakékoli předvolené možnosti, lze provést kteroukoli z nich

  • Odznačit vše ()
  • deselectByIndex
  • deselectByValue
  • zrušit výběrByVisibletext

Pojďme podrobně porozumět metodám.

  • Odznačit vše (): Vymaže všechny vybrané položky. To platí pouze v případě, že rozevírací prvek podporuje více výběrů.

Příklad: o Vyberte. Odznačit vše ()

  • deselectByIndex (): Tozruší výběr možnosti u daného indexu.

Příklad: o Vyberte. deselectByIndex (2)

  • deselectByValue (): Tato metoda pomáhá zrušit výběr možnosti, jejíž „ hodnota ”Atribut odpovídá konkrétnímu parametru.

Příklad: o Vyberte. deselectByValue („13“)

  • deselectByVisibletext (): Tato metoda pomáhá zrušit výběr možnosti, která zobrazuje text odpovídající parametru.

Vyberte třídu v selenu WebDriver: Jak vybrat možnost z rozevírací nabídky?

Pomůžu vám pochopit, jak na to Vybrat metoda pracuje s příkladem v reálném čase.

V tomto případě zvážím práci na slavné webové stránce elektronického obchodu facebook.com.

  • Nejprve do svého systému přidejte knihovny Java.
  • IDE, kde můžete napsat část kódu. Zvažuji práci na Eclipse IDE, protože je uživatelsky přívětivý.
  • Přidejte do projektu selenové knihovny.
  • Získejte adresu URL webové stránky.
  • Proveďte požadované akce v rozevíracím seznamu.

Vysvětlil jsem to pomocí 2 různých programů. První program vám pomůže vybrat hodnotu z rozevíracího seznamu a druhý program pomůže provést různé operace v rozevíracím seznamu.

  • Nejprve nastavte .
  • Získejte adresu URL Facebook .
  • Vytvořit objekt a vyhledejte prvek pomocí lokátorů prvků.
  • Vyberte objekt WebElement pomocí metod Select.
  • Ukončete spuštění ovladače.

Viz tento kód:

balíček 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.chrome.ChromeDriver 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 = new 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 (od .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 = nový Select (month_m) month_d1.selectByVisibleText ('Jul') driver.quit ()}}

Druhý program se zabývá prováděním akcí v rozevíracím seznamu. V tomto případě si vytiskneme počet měsíců a také jména.

  • Vytvořte seznam WebElements a vyberte možnosti.
  • Získejte rozevírací nabídku velikosti měsíce.
  • Vytiskněte velikost seznamu měsíců.
  • Vytvořte další objekt WebElement to a získejte název měsíce.
  • Vytiskněte číslo pomocí smyčky for.
  • Ukončete spuštění ovladače.
balíček 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) throws InterruptedException {System.setProperty ('webdriver.chrome.driver', ' C: UsersVaishnaviDesktopchromedriver_win32 (2) chromedriver.exe ') Driver WebDriver = new ChromeDriver () JavascriptExecutor js = (JavascriptExecutor) driver driver.get (' http://www.facebook.com ') driver.manage (). Window () .maximize () //js.executeScript('window.scrollBy(0,300) ') WebElement month_dropdown = driver.findElement (By.id (' month ')) Select oSelect = new Select (month_dropdown) List & ampampltWebElement & ampampgt month_list = oSelect.getOptions ( ) int total_month = month_list.size () System.out.println ('Celkový počet je' + total_month) pro (WebElement ele: month_list) {Řetězec month_name = ele.getText () System.out.println ('Měsíce jsou' + month_name)} driver.quit ()}}

Tímto jsme nyní skončili s tímto blogem „Jak vybrat z rozevíracího seznamu v Selenium WebDriver“. Doufám, že se vám tento článek líbil a pochopili jste, jak funguje Select Class v Seleniu.

Nyní, když jste pochopili, jak vybrat hodnotu z rozevíracího seznamu pomocí selenu, podívejte se na Edureka, důvěryhodná online vzdělávací společnost se sítí více než 650 000 spokojených studentů rozšířených po celém světě. Tento kurz je navržen tak, aby vám představil kompletní funkce selenu a jeho důležitost v testování softwaru.

Máte na nás dotaz? Uveďte to prosím v sekci komentářů „Jak vybrat z rozevíracího seznamu v Selenium WebDriver“ a my se vám ozveme.