usage selenium select class
I forrige opplæring studerte vi om de forskjellige typene påstandssetninger som er tilgjengelige i Java-baserte enhetstestingsrammer og deres applikasjoner med eksemplarer. Påstander gjentar det faktum at det å være en “Automation Test Engineer” spiller påstander en veldig avgjørende og viktig rolle i utviklingen av testskript.
Fortsett med de få kommende opplæringene i Selenium-serien, vil vi konsentrere oss om håndtering av de forskjellige typer webelementer som er tilgjengelige på websidene . Derfor, i denne opplæringen, vil vi vurdere “Dropdowns” og utøve håndteringsstrategier .
test data genereringsverktøy åpen kildekode
Før vi går mot problemstilling og løsning, la oss ta oss tid til å introdusere og skape forståelse for applikasjonen som testes. Som et eksempel har vi laget en dummy HTML-side bestående av flere og forskjellige webelementer.
De elementære webelementene som utgjør websiden er:
- Hyperkobling
- Knapp
- Fall ned
Vennligst referer til følgende nettside ovenfor:
Hva du vil lære:
- Forklaring på applikasjon under test
- Scenario skal automatiseres
- WebDriver-kode ved bruk av Selenium Select Class
- Code Walkthrough
- Konklusjon
- Anbefalt lesing
Forklaring på applikasjon under test
Vi har designet nettsiden på en måte som inkluderer noen få grunnleggende typer webelementer.
- Hyperkobling : De to hyperkoblingene, nemlig “Google” og “abodeQA”, er gitt som omdirigerer brukeren til henholdsvis “https://www.google.co.in/” og “http://www.abodeqa.com/” på klikkhendelsen.
- Fall ned : De tre rullegardinene er opprettet for å velge farger, frukt og dyr med en verdi som allerede er satt til standard.
- Knapp : En “prøv det” -knapp er opprettet for å vise popup-boksen som har OK- og Avbryt-knappen ved klikkhendelsen.
Etterfølgende er HTML-koden som brukes til å opprette ovennevnte webside:
Testing Select Class Red Green Yellow Grey Apple Orange Mango Lime Select Elephant Mouse Dog Click the button to display a confirm box.
Try it function myFunction() { confirm('Press a button!'); }
Scenario skal automatiseres
- Start nettleseren og åpne nettsiden
- Klikk på 'Google' hyperkoblingen
- Naviger tilbake til den opprinnelige nettsiden
- Velg rullegardinmenyen “Grønn”
- Velg 'Orange' i rullegardinmenyen for frukt
- Velg 'Elefanten' i rullegardinmenyen for dyr
WebDriver-kode ved bruk av Selenium Select Class
Vær oppmerksom på at vi for å lage skript bruker 'Learning_Selenium' -prosjektet som ble opprettet i den tidligere opplæringen.
Trinn 1: Lag en ny java-klasse kalt “HandlingDropDown” under “Learning_Selenium” -prosjektet.
Steg 2: Kopier og lim inn koden nedenfor i klassen “HandlingDropDown.java”.
Nedenfor er testskriptet som tilsvarer ovennevnte scenario:
import static org.junit.Assert.*; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.support.ui.Select; /** * class description */ public class HandlingDropDown { WebDriver driver; /** * Set up browser settings and open the application */ @Before public void setUp() { driver=new FirefoxDriver(); // Opened the application driver.get('file:///F:/Work/Blogs/testingstuff/DemoWebAlert.html'); driver.manage().window().maximize(); } /** * Test to select the dropdown values * @throws InterruptedException */ @Test public void testSelectFunctionality() throws InterruptedException { // Go to google driver.findElement(By.linkText('Google')).click(); // navigate back to previous webpage driver.navigate().back(); Thread.sleep(5000); // select the first operator using 'select by value' Select selectByValue = new Select(driver.findElement(By.id('SelectID_One'))); selectByValue.selectByValue('greenvalue'); Thread.sleep(5000); // select the second dropdown using 'select by visible text' Select selectByVisibleText = new Select (driver.findElement(By.id('SelectID_Two'))); selectByVisibleText.selectByVisibleText('Lime'); Thread.sleep(5000); // select the third dropdown using 'select by index' Select selectByIndex = new Select(driver.findElement(By.id('SelectID_Three'))); selectByIndex.selectByIndex(2); Thread.sleep(5000); } /** * Tear down the setup after test completes */ @After public void tearDown() { driver.quit(); } }
Code Walkthrough
Importer uttalelser
- import org. openqa.selenium.support.ui.Velg - Importer denne pakken før manusopprettingen. Pakken refererer til Select-klassen som kreves for å håndtere rullegardinmenyen.
Objektinstantiering for Velg klasse
Velg selectByValue = ny Velg (driver.findElement (By.id (“SelectID_One”)));
Vi oppretter en referansevariabel for Velg klasse og instantier den ved hjelp av Velg klasse og identifikatoren for rullegardinmenyen.
Identifikatoren eller lokaliseringsverdien for rullegardinmenyen finner du ved hjelp av teknikkene som ble diskutert i de innledende opplæringene (ved bruk av Selen IDE og firebug).
Legg merke til at identifikatoren for rullegardinmenyen finner du nedenfor:
Trinn 1: De fleste eller nesten alle rullegardinelementene er definert i koden som har flere verdier (verdier som kan settes inn i rullegardinmenyen) som er definert under kodene.
Angi verdien i rullegardinmenyen ved hjelp av selectByValue () metode
selectByValue.selectByValue (“greenvalue”);
I java-kommandoen ovenfor velger vi verdien 'grønn' i rullegardinmenyen ved hjelp av selectByValue () metode og parameterisere den med teksten som er tilstede i verdiattributtet.
Angi verdien i rullegardinmenyen ved å bruke metoden selectByVisibleText ()
selectByValue.selectByVisibleText (“Lime”);
I ovenstående java-kommando velger vi verdien 'Lime' i rullegardinmenyen ved hjelp av selectByVisibleText () metode og parameterisere den med teksten som er tilstede i brukergrensesnittet eller teksten som er tilstede mellom åpnings- og lukkekoder.
Angi verdien i rullegardinmenyen ved hjelp av selectByIndex () metode
selectByValue.selectByIndex (“2”);
I ovenstående java-kommando velger vi den tredje verdien i rullegardinmenyen ved hjelp av selectByIndex () metode og parameterisere den med indeksverdien til elementet som ønskes valgt i rullegardinmenyen.
Legg merke til at indeksverdien starter med “0”.
Konklusjon
I denne veiledningen prøvde vi å gjøre deg kjent med WebDriver's Select-klassen som brukes til å håndtere rullegardinelementer som finnes på websiden. Vi orienterte deg også om metodene som kan brukes til å fylle ut verdien i rullegardinmenyen.
Her er artikkelsammendraget:
- WebDriver's Select-klasse brukes til å håndtere rullegardinelementene på en webside.
- Før selve skriptet, må vi importere en pakke for å kunne lage et WebDriver-skript for å håndtere en rullegardin og gjøre Select-klassen tilgjengelig.
- import org. openqa.selenium.support.ui.Select;
- Vi oppretter en referansevariabel for Velg klasse og instantier den ved hjelp av Velg klasse og identifikatoren for rullegardinmenyen.
- Å velge selectByValue = new Velg (driver.findElement (By.id (“SelectID_One”)));
- Identifikatoren eller lokaliseringsverdien for dråpen finner du ved hjelp av Selen IDE og firebug.
- Ideelt sett er det tre måter å velge ønsket verdi i rullegardinmenyen blant den oppførte.
- selectByValue ()
- selectByVisibleText ()
- selectByIndex ()
- Følgende java-kommando brukes til å velge den 'grønne' fargen i rullegardinmenyen. Legg merke til at verdien i rullegardinmenyen er valgt ved hjelp av selectByValue ()
- selectByValue (“grønn verdi”);
- Følgende java-kommando brukes til å velge 'Lime' -frukt i rullegardinmenyen. Legg merke til at verdien i rullegardinmenyen er valgt ved hjelp av selectByVisibleText ()
- selectByVisibleText (“Lime”);
- Følgende java-kommando brukes til å velge den tredje verdien blant alle de tilgjengelige alternativene som er oppført for rullegardinmenyen. Legg merke til at verdien i rullegardinmenyen er valgt ved hjelp av selectByIndex ()
- selectByIndex (“2”);
Neste opplæring # 14 : I den kommende opplæringen vil vi diskutere om forskjellige typer kommandoer i WebDriver som isSelected (), isEnabled () og isDispalyed () de returnerer en boolsk verdi mot tilstedeværelsen av et spesifisert webelement.
Inntil da, hold deg oppdatert og automatiser rullegardinmenyen ved hjelp av WebDriver-verktøyet - 'Velg klasse'.
Anbefalt lesing
- Hvordan finne elementer i Chrome- og IE-nettlesere for å bygge selen-skript - Veiledning nr. 7
- Agurk Selen Tutorial: Agurk Java Selen WebDriver Integration
- Kontroller synligheten til nettelementer ved hjelp av forskjellige typer WebDriver-kommandoer - Selenium-veiledning nr. 14
- In-Depth Eclipse Tutorials For Beginners
- Introduksjon til Selenium WebDriver - Selenium Tutorial # 8
- Slik bruker du CSS Selector for å identifisere webelementer for selenskripter - Selen-opplæring # 6
- Effektiv Selen Scripting og feilsøking av scenarier - Selenium Tutorial # 27
- Feilsøking av selen-skript med logger (Log4j-opplæring) - Selen-opplæring # 26