Sådan vælges en værdi fra rullemenuen i Selen WebDriver

Denne artikel hjælper dig med at forstå, hvad der er en Select-klasse i Selenium WebDriver, og også hvordan du vælger en værdi fra en rulleliste i Selenium WebDriver

For at udføre enhver handling, den førsteopgave at gøre er at identificere elementgruppen. Generelt, mens du arbejder med , skal du muligvis vælge nogle værdier fra rullelisten og også udføre andre aktiviteter og validere dem. Så jeg vil guide dig i at forstå, hvad der er en Select-klasse i Selen WebDriver, og hvordan du gør det Vælg en værdi fra en rulleliste i Selen WebDriver.



Jeg vil diskutere dette emne i denne rækkefølge:



Så lad os komme i gang.

Vælg klasse i Selen WebDriver

Det Vælg klasse er en klasse, der grundlæggende giver implementeringen af ​​HTML SELECT-tagget. Et Select-tag giver hjælpemetoderne valgmuligheder for valg og fravælgelse. Denne klasse kan findes under Seleniums Support.UI.Select pakke. Select er faktisk en almindelig klasse, så dens objekt oprettes også af nøgleordet Ny og specificerer også placeringen af ​​webelementet.



Syntaks:

Vælg oVælg = nyt Vælg ()

Det kaster en fejl, der beder om at tilføje argumenter til kommandoen. Så angiv webelementets placering ved hjælp af .

Det hedder det klart Vælg beder om et elementtype-objekt til sin konstruktør.



Efter dette,når du først får genstanden til VÆLG klasse , kan du få adgang til alle de metoder, der findes i VÆLG klasse ved at skrive oVælg + prik som indeholder alle metoderne under Select-klassen. Vælg en hvilken som helst metode i henhold til din testsag.

Så lad os nu gå videre for at lære om de forskellige metoder under denne Select-klasse.

Vælg klasse i Selenium WebDriver: Forskellige kommandoer

Følgende er de mest anvendte metoder til at håndtere rullelisten.

en. selectByVisibleText: selectByVisibleText (String arg0): ugyldig

Det er meget let at vælge eller vælge en mulighed, der er angivet under eventuelle drop-down og flere markeringsfelter med denne metode. Det kræver en parameter af streng, som er en af værdi af Vælg element og det returnerer intet.

Syntaks: oSelect.selectByVisibleText (“tekst”)

Eksempel:

Vælg oSelect = ny Vælg (driver.findElement (By.id ('søgefelt'))) oSelect.selectByVisibleText ('Blog')

2 . selectByIndex: selectByIndex (int arg0): ugyldig

hvordan man implementerer en hashmap

Denne metode svarer næsten til 'selectByVisibleText', men den eneste forskel her er, at brugeren skal angive indeksnummeret for indstillingen snarere valgteksten. Det tager heltalsparameteren, som er indeksværdien af Vælg element og det returnerer intet.

Synatx: oSelect.selectByIndex (int)

Eksempel:

Vælg oSelect = ny Vælg (driver.findElement (By.id ('Seacrch-box'))) oSelect.selectByIndex (2)

3. selectByValue: selectByValue (String arg0): ugyldig

Denne metode svarer igen til det, jeg har diskuteret tidligere, den eneste forskel i denne metode, er at den beder om værdien af ​​indstillingen snarere valgteksten eller et indeks. Det kræver en strengparameter, som er en af ​​værdierne for Vælg element og det returnerer ikke noget.

Syntaks: oSelect.selectByValue (“tekst”)

Eksempel:

Vælg oSelect = ny Vælg (driver.findElement (By.id ('Søgefelt'))) oSelect.selectByValue ('Selenium-certificeringstræning')

Fire. getOptions: getOptions (): Liste

Denne metode hjælper med at få alle de muligheder, der tilhører Select-tagget. Det tager ingen parameter og vender tilbage Liste .

Syntaks: oSelect.getOptions ()

Eksempel:

Vælg oSelect = ny Vælg (driver.findElement (By.id ('Søgefelt'))) ListeelementCount = oSelect.getOptions () System.out.println (elementCount.size ())

Så lad os gå videre til det næste emne og lære om metoderne til flere valg

Vælg klasse i Selenium WebDriver: Hvordan fungerer Multiple SELECT-kommandoen?

Attributten multiple select er et boolsk udtryk. Når dette er til stede, specificerer det, at der kan vælges flere muligheder på én gang. Disse muligheder varierer for forskellige operativsystemer og browsere, nemlig:

  • Til Windows: Hold kontrolknappen (ctrl) nede for at vælge flere muligheder.
  • Til Mac: Hold kommandoknappen nede for at vælge flere muligheder.

Det er brugervenligt at bruge afkrydsningsfelter i stedet for at bruge forskellige måder at udføre operationer på, fordi du er nødt til at informere brugeren om, at der er flere valg tilgængelige. Der er en metode, der faktisk hjælper med at specificere, at du kan bruge flere valgmuligheder.

er flere

isMultiple (): boolsk - Denne metode fortæller, om SELECT-elementet understøtter flere valgmuligheder på samme tid eller ej. Denne metode accepterer intet, men returnerer en boolsk værdi (sand / falsk).

Syntaks: oSelect.isMultiple ()

forskel mellem metodeoverbelastning og tilsidesættelse i java

Eksempel:

Vælg oSelect = ny Vælg (driver.findElement (By.id (Element_ID))) oSelect.selectByIndex (index) oSelect.selectByIndex (index) // Eller kan bruges som oSelect.selectByVisibleText (text) oSelect.selectByVisibleText (tekst) / / Eller kan bruges som oSelect.selectByValue (værdi) oSelect.selectByValue (værdi)

Vælg klasse i Selen WebDriver: DeSelect-metoder

Når du vælger et bestemt element på websiden, er der et par metoder, der kan hjælpe med at fravælge dette element. Men den eneste udfordring i disse metoder er, at de ikke fungerer for DropDown og kun arbejde for Multi-Select elementer.

Hvis du vil fravælge en forudvalgt indstilling, kan det gøres med en af ​​dem

  • Fravælg alle ()
  • fravælgeByIndex
  • fravælgeByValue
  • fravælgByVisibletext

Lad os forstå metoderne detaljeret.

  • Fravælg alle (): Det rydder alle valgte poster. Dette er kun gyldigt, når rullemenuen understøtter flere valg.

Eksempel: oVælg. Fravælg alle ()

  • fravælgeByIndex (): Detfravælger indstillingen ved det givne indeks.

Eksempel: oVælg. fravælgByIndex (2)

  • fravælgeByValue (): Denne metode hjælper med at fravælge den mulighed, hvis “ værdi ”Attribut matcher den specifikke parameter.

Eksempel: oVælg. fravælgeByValue (“13”)

  • fravælgeByVisibletext (): Denne metode hjælper med at fravælge den mulighed, der viser teksten, der matcher parameteren.

Vælg klasse i Selenium WebDriver: Hvordan vælges en indstilling i rullemenuen?

Jeg vil hjælpe jer med at forstå, hvordan dette Vælg metoden fungerer med et realtidseksempel.

android studie tutorials til begyndere

I dette tilfælde vil jeg overveje at arbejde på et berømt e-handelswebsted facebook.com.

  • Først skal du tilføje Java-bibliotekerne på dit system.
  • En IDE, hvor du kan skrive kodestykket. Jeg vil overveje at arbejde på Eclipse IDE, da det er brugervenligt.
  • Tilføj Selenium-biblioteker til projektet.
  • Få URL'en til websiden.
  • Udfør ønskede handlinger på rullelisten.

Jeg har forklaret dette ved hjælp af 2 forskellige programmer. Det første program hjælper dig med at vælge en værdi fra rullelisten, og det andet program hjælper med at udføre forskellige handlinger på rullelisten.

  • Indstil først .
  • Hent URL til Facebook .
  • Lave en objekt og find elementet ved hjælp af elementlokatorerne.
  • Vælg objektet til WebElement ved hjælp af Select-metoderne.
  • Afslut driverudførelsen.

Se denne kode:

pakke 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) throw InterruptedException {System.setProperty ('webdriver.chrome.driver', 'C: UsersVaishnaviDesktopchromedriver_win32 (2) chromedriver.exe ') WebDriver-driver = ny ChromeDriver () driver.get (' http://www.facebook.com ') driver.manage (). vindue (). maksimer () //js.executeScript('window. scrollBy (0,300) ') WebElement month_dropdown = driver.findElement (By.id (' day ')) Vælg oSelect = ny Vælg (month_dropdown) oSelect.selectByIndex (3) Thread.sleep (3000) WebElement year_yy = driver.findElement (By .id ('year')) Vælg year_y = new Vælg (year_yy) year_y.selectByValue ('2000') Thread.sleep (3000) WebElement month_m = driver.findElement (By.id ('month')) Sele ct month_d1 = ny Vælg (month_m) month_d1.selectByVisibleText ('Jul') driver.quit ()}}

Det andet program handler om at udføre handlinger på rullelisten. Lad os i dette tilfælde udskrive antallet af måneder og også navnene.

  • Opret en liste over WebElements, og vælg indstillingerne.
  • Få rullemenuen størrelse på måneden.
  • Udskriv størrelsen på månedslisten.
  • Opret et andet objekt af WebElement det og få månedens navn.
  • Udskriv nummeret ved hjælp af en for-løkke.
  • Afslut driverudførelsen.
pakke 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 importerer org.openqa.selenium.support.ui.Vælg offentlig klasse SelectClass2 {@Test offentlig statisk ugyldig main (String [] args) kaster InterruptedException {System.setProperty ('webdriver.chrome.driver', ' C: BrugereVaishnaviDesktopchromedriver_win32 (2) chromedriver.exe ') WebDriver driver = ny ChromeDriver () JavascriptExecutor js = (JavascriptExecutor) driver driver.get (' http://www.facebook.com ') driver.manage (). Vindue () .maximize () //js.executeScript('window.scrollBy(0,300) ') WebElement month_dropdown = driver.findElement (By.id (' month ')) Vælg oSelect = ny Vælg (month_dropdown) Liste & ampampltWebElement & ampampgt month_list = oSelect.getOptions ) int total_month = month_list.size () System.out.println ('Total count is' + total_month) for (WebElement ele: måned_liste) {String måned_navn = ele.getText () System.out.println ('Måneder er + måned_navn)} driver.quit ()}}

Nu med dette kommer vi til en ende på denne 'Sådan vælges fra en rullemenu i Selen WebDriver' -blog. Jeg håber, jer nød denne artikel og forstod, hvordan Select class fungerer i Selen.

Nu hvor du har forstået, hvordan du vælger en værdi fra en rulleliste ved hjælp af Selen, skal du tjekke af Edureka, et pålideligt online læringsfirma med et netværk på mere end 650.000 tilfredse elever spredt over hele kloden. Dette kursus er designet til at introducere dig til de komplette Selen-funktioner og dens betydning i testsoftware.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i “Sådan vælges fra en rullemenu i Selenium WebDriver”, så vender vi tilbage til dig.