V tomto tutoriále sa dozvieme, ako zvládnuť DropDown v operáciách selénu a viacnásobného výberu.
Vyberte Trieda na seléne
Select Class v Selén je metóda používaná na implementáciu značky HTML SELECT. Značka html select poskytuje pomocné metódy na výber a zrušenie výberu prvkov. Trieda Select je bežná trieda, takže na vytvorenie objektu sa používa kľúčové slovo New, ktoré určuje umiestnenie webového prvku.
Vyberte možnosť z rozbaľovacieho zoznamu
Nasleduje postup krok za krokom, ako zvoliť hodnotu z rozbaľovacej ponuky selénu:
Pred manipuláciou s rozbaľovacím zoznamom v seléne a kontrolou rozbaľovacích políčok musíme urobiť dve nasledujúce veci:
- Importujte balík org.openqa.selenium.support.ui. Vyberte
- Rozbaľovacie políčko vytvorte ako objekt a vyberte ho v selenickom webovom ovládači
Napríklad choďte na registračnú stránku Mercury Tours (http://demo.guru99.com/test/newtours/register.php) a všimnite si tam rozbaľovacie políčko „Krajina“.
Krok 1
Importujte balík „Vybrať“.
Krok 2
Deklarujte prvok rozbaľovacej ponuky ako inštanciu triedy Select. V príklade nižšie sme túto inštanciu pomenovali ako „drpCountry“.
Krok 3
Teraz môžeme začať ovládať program „drpCountry“ pomocou ktorejkoľvek z dostupných metód výberu, pomocou ktorej vyberieme rozbaľovaciu ponuku na seléne. Ukážkový kód uvedený nižšie vyberie možnosť „ANTARCTICA“.
Výber položiek vo viacerých prvkoch SELECT
Môžeme tiež použiť metódu selectByVisibleText () pri výbere viacerých možností v prvku multi SELECT. Ako príklad si vezmeme http://jsbin.com/osebed/2 ako základnú adresu URL. Obsahuje rozbaľovaciu ponuku, ktorá umožňuje viacnásobný výber súčasne.
Nasledujúci kód vyberie prvé dve možnosti pomocou metódy selectByVisibleText ().
Vyberte položku Metódy
Nasleduje najbežnejšia metóda použitá v rozbaľovacom zozname selénu.
Metóda | Popis |
---|---|
selectByVisibleText () a deselectByVisibleText ( ) Príklad: ![]() |
|
selectByValue () a deselectByValue ( ) Príklad: ![]() |
![]() |
selectByIndex () a deselectByIndex ( ) Príklad: ![]() |
|
isMultiple () Príklad: ![]() |
|
deselectAll () Príklad: ![]() |
|
Tu je celý kód
balíček newpackage;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;importovať org.openqa.selenium.support.ui.Select;import org.openqa.selenium.By;verejná trieda accessDropDown {public static void main (String [] args) {System.setProperty ("webdriver.gecko.driver", "C: \\ geckodriver.exe");Reťazec baseURL = "http://demo.guru99.com/test/newtours/register.php";Ovládač WebDriver = nový FirefoxDriver ();driver.get (baseURL);Select drpCountry = new Select (driver.findElement (By.name ("country")));drpCountry.selectByVisibleText ("ANTARCTICA");// Výber položiek vo viacerých prvkoch SELECTdriver.get ("http://jsbin.com/osebed/2");Vyberte ovocie = nové Vyberte (driver.findElement (By.id ("ovocie")));ovocie.selectByVisibleText ("banán");ovocie.selectByIndex (1);}}
Zhrnutie
Prvok | Velenie | Popis |
---|---|---|
Rozbaľovací zoznam | selectByVisibleText () / deselectByVisibleText () | vyberie / zruší výber možnosti podľa zobrazeného textu |
selectByValue () / deselectByValue () | vyberie / zruší výber možnosti podľa hodnoty jej atribútu „value“ | |
selectByIndex () / deselectByIndex () | vyberie / zruší výber možnosti podľa jej indexu | |
isMultiple () | vráti TRUE, ak prvok rozbaľovacej ponuky umožňuje viacnásobný výber súčasne; FALSE, ak je to inak | |
odznačiť všetko() | zruší výber všetkých predtým vybratých možností |
Ak chcete ovládať rozbaľovacie polia, musíte najskôr importovať balík org.openqa.selenium.support.ui.Select a potom vytvoriť inštanciu Select.