Hur man väljer värde från DropDown med Selenium Webdriver

Innehållsförteckning:

Anonim

I den här handledningen lär vi oss att hantera DropDown i Selenium och Multiple Select-operationer.

Välj klass i selen

Den Select Class i Selenium är en metod som används för att implementera HTML SELECT tag. HTML-taggen ger hjälpmetoder för att välja och avmarkera elementen. Select-klassen är en vanlig klass så Nytt nyckelord används för att skapa sitt objekt och det anger webbelementets plats.

Välj alternativ i rullgardinsmenyn

Följande är en steg för steg-process för hur man väljer värde från rullgardinsmenyn i Selen:

Innan vi hanterar rullgardinsmeny i Selen och kontrollerar listrutor måste vi göra följande två saker:

  1. Importera paketet org.openqa.selenium.support.ui.Select
  2. Instantiera rullgardinsmenyn som ett objekt, välj i Selenium WebDriver

Gå till exempel registreringssidan för Mercury Tours (http://demo.guru99.com/test/newtours/register.php) och märka rullgardinsmenyn "Land" där.

Steg 1

Importera paketet "Välj".

Steg 2

Deklarera rullgardinselementet som en förekomst av klassen Välj. I exemplet nedan namngav vi denna instans som "drpCountry".

Steg 3

Vi kan nu börja kontrollera "drpCountry" genom att använda någon av de tillgängliga Select-metoderna för att välja rullgardinsmeny i Selen. Exempelkoden nedan väljer alternativet "ANTARCTICA."

Välja objekt i flera SELECT-element

Vi kan också använda metoden selectByVisibleText () för att välja flera alternativ i ett multi SELECT-element. Som ett exempel tar vi http://jsbin.com/osebed/2 som bas-URL. Den innehåller en listruta som tillåter flera val åt gången.

Koden nedan väljer de två första alternativen med selectByVisibleText () -metoden.

Välj metoder

Följande är de vanligaste metoderna som används i Selen-rullgardinsmenyn.

Metod Beskrivning
selectByVisibleText () och avmarkeraByVisibleText () Exempel:
  • Väljer / avmarkerar alternativet som visar texten som matchar parametern.
  • Parameter : Exakt visad text för ett visst alternativ
selectByValue () och deselectByValue () Exempel:
  • Väljer / avmarkerar alternativet vars attribut "värde" matchar den angivna parametern.
  • Parameter : värde för attributet "värde"
  • Kom ihåg att inte alla rullgardinsalternativ har samma text och "värde", som i exemplet nedan.
selectByIndex () och avmarkeraByIndex () Exempel:
  • Väljer / avmarkerar alternativet vid det angivna indexet.
  • Parameter : indexet för det alternativ som ska väljas.
isMultiple () Exempel:
  • Returnerar SANT om rullgardinselementet tillåter flera val åt gången. FALSKT om inte annat.
  • Inga parametrar behövs
deselectAll () Exempel:
  • Rensar alla valda poster. Detta är endast giltigt när rullgardinselementet stöder flera val.
  • Inga parametrar behövs

Här är den fullständiga koden

paket nypaket;importera org.openqa.selenium.WebDriver;importera org.openqa.selenium.firefox.FirefoxDriver;importera org.openqa.selenium.support.ui.Select;importera org.openqa.selenium.By;public class accessDropDown {public static void main (String [] args) {System.setProperty ("webdriver.gecko.driver", "C: \\ geckodriver.exe");SträngbasURL = "http://demo.guru99.com/test/newtours/register.php";WebDriver-drivrutin = ny FirefoxDriver ();driver.get (baseURL);Välj drpCountry = ny Välj (driver.findElement (By.name ("land"));drpCountry.selectByVisibleText ("ANTARCTICA");// Välja objekt i flera SELECT-elementdriver.get ("http://jsbin.com/osebed/2");Välj frukt = ny Välj (driver.findElement (By.id ("fruits")));fruits.selectByVisibleText ("Banana");fruits.selectByIndex (1);}}

Sammanfattning

Element Kommando Beskrivning
Listruta selectByVisibleText () / avmarkeraByVisibleText () väljer / avmarkerar ett alternativ med dess visade text
selectByValue () / avmarkeraByValue () väljer / avmarkerar ett alternativ med värdet för dess attribut "värde"
selectByIndex () / avmarkeraByIndex () väljer / avmarkerar ett alternativ med dess index
isMultiple () returnerar SANT om rullgardinselementet tillåter flera val åt gången; FALSKT om inte annat
avmarkera alla() avmarkerar alla tidigare valda alternativ

För att kontrollera listrutor måste du först importera paketet org.openqa.selenium.support.ui.Select och skapa sedan en instans Välj.