usage selenium select class
I föregående handledning studerade vi de olika typerna av påståenden som finns tillgängliga i Java-baserade enhetstestningsramar och deras applikationer med exemplar. Återupprepa det faktum att att vara en “Automation Test Engineer”, påståenden spelar en mycket avgörande och viktig roll för att utveckla testskript.
Att gå vidare med några kommande handledning i Selen-serien, skulle vi koncentrera oss på hantering av olika typer av webbelement som finns tillgängliga på webbsidorna . Därför, i denna handledning, skulle vi överväga 'Dropdown' och utöva deras hanteringsstrategier .
oracle performance tuning intervjufrågor och svar
Innan vi går mot ett problemförklaring och dess lösning, låt oss ta en stund att introducera och skapa en förståelse för applikationen som testas. Som ett exempel har vi skapat en dummy HTML-sida bestående av flera och olika webbelement.
De elementära webbelement som utgör webbsidan är:
- Hyperlänk
- Knapp
- Falla ner
Vänligen hänvisa till följande webbsida ovan nämnda:
Vad du kommer att lära dig:
- Förklaring av applikation under test
- Scenario ska automatiseras
- WebDriver-kod med Selenium Select Class
- Kodgenomgång
- Slutsats
- Rekommenderad läsning
Förklaring av applikation under test
Vi har utformat webbsidan på ett sätt att inkludera några grundläggande typer av webbelement.
- Hyperlänk : De två hyperlänkarna, 'Google' och 'abodeQA' har tillhandahållits som omdirigerar användaren till 'https://www.google.co.in/' respektive 'http://www.abodeqa.com/' på klickhändelsen.
- Falla ner : De tre rullgardinsmenyerna har skapats för att välja färger, frukter och djur med ett värde som redan är inställt som standard.
- Knapp : En 'prova' -knapp har skapats för att visa popup-rutan med Ok och Avbryt-knappen vid klickhändelse.
Därefter är HTML-koden som används för att skapa ovan nämnda webbsida:
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 ska automatiseras
- Starta webbläsaren och öppna webbsidan
- Klicka på hyperlänken 'Google'
- Navigera tillbaka till den ursprungliga webbsidan
- Välj 'Grön' i färgmenyn
- Välj 'Orange' i rullgardinsmenyn för frukt
- Välj 'Elefant' i rullgardinsmenyn för djur
WebDriver-kod med Selenium Select Class
Observera att vi, för att skapa skript, skulle använda ”Learning_Selenium” -projektet som skapades i den tidigare självstudien.
Steg 1: Skapa en ny java-klass med namnet “HandlingDropDown” under “Learning_Selenium” -projektet.
Steg 2: Kopiera och klistra in koden nedan i klassen “HandlingDropDown.java”.
Nedan följer testskriptet som motsvarar ovan nämnda 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(); } }
Kodgenomgång
Importera uttalanden
- importera org. openqa.selenium.support.ui.Select - Importera detta paket innan skriptet skapas. Paketets referenser till Select-klassen som krävs för att hantera rullgardinsmenyn.
Objektinstantiering för Välj klass
Välj selectByValue = new Välj (driver.findElement (By.id (“SelectID_One”)));
Vi skapar en referensvariabel för Välj klass och instanserar den med Välj klass och identifieraren för rullgardinsmenyn.
Identifieraren eller lokaliseringsvärdet för rullgardinsmenyn kan hittas med de tekniker som diskuterades i de inledande självstudierna (med Selen IDE och firebug).
Lägg märke till att identifieraren för en rullgardinsmeny kan hittas enligt nedan:
Steg 1: De flesta eller nästan alla rullgardinselement definieras i taggen med flera värden (värden som kan ställas in i rullgardinsmenyn) som definieras under taggarna.
Ställa in värdet i rullgardinsmenyn med selectByValue () metod
selectByValue.selectByValue (“greenvalue”);
I java-kommandot ovan väljer vi värdet 'grönt' i rullgardinsmenyn med hjälp av selectByValue () metod och parametrera den med texten i värdeattributet.
Ställa in värdet i rullgardinsmenyn med selectByVisibleText () -metoden
selectByValue.selectByVisibleText (“Lime”);
I java-kommandot ovan väljer vi värdet 'Lime' i rullgardinsmenyn med selectByVisibleText () metod och parametrera den med texten som finns i användargränssnittet eller texten mellan de inledande och stängande taggarna.
Ställa in värdet i rullgardinsmenyn med selectByIndex () metod
selectByValue.selectByIndex (“2”);
I ovanstående java-kommando väljer vi det tredje värdet i rullgardinsmenyn med hjälp av selectByIndex () metod och parametrera den med indexvärdet för det element som önskas väljas i rullgardinsmenyn.
Notera att indexvärdet börjar med “0”.
Slutsats
I den här självstudien försökte vi göra dig bekant med WebDrivers Select-klass som används för att hantera rullgardinselement som finns på webbsidan. Vi informerade dig också om de metoder som kan användas för att fylla i värdet i rullgardinsmenyn.
Här är artikelöversikten:
- WebDrivers Select-klass används för att hantera rullgardinselementen som finns på en webbsida.
- Innan själva skriptet måste vi importera ett paket för att kunna skapa ett WebDriver-skript för att hantera en rullgardinsmeny och göra Select-klassen tillgänglig.
- importera org. openqa.selenium.support.ui.Select;
- Vi skapar en referensvariabel för Välj klass och instanserar den med Välj klass och identifieraren för rullgardinsmenyn.
- Välj selectByValue = new Välj (driver.findElement (By.id (“SelectID_One”)));
- Identifieraren eller lokaliseringsvärdet för droppen kan hittas med hjälp av Selen IDE och firebug.
- Helst finns det tre sätt att välja önskat värde i rullgardinsmenyn bland de listade.
- selectByValue ()
- selectByVisibleText ()
- selectByIndex ()
- Följande java-kommando används för att välja 'grön' färg i rullgardinsmenyn. Lägg märke till att värdet i rullgardinsmenyn väljs med hjälp av selectByValue ()
- väljByValue (“grönt värde”);
- Följande java-kommando används för att välja 'Lime' -frukt i rullgardinsmenyn. Lägg märke till att värdet i rullgardinsmenyn väljs med hjälp av selectByVisibleText ()
- selectByVisibleText (“Lime”);
- Följande java-kommando används för att välja det tredje värdet bland alla tillgängliga alternativ som är listade för rullgardinsmenyn. Lägg märke till att värdet i rullgardinsmenyn väljs med hjälp av selectByIndex ()
- väljByIndex (“2”);
Nästa handledning # 14 : I den kommande handledningen skulle vi diskutera om olika typer av kommandon i WebDriver som isSelected (), isEnabled () och isDispalyed () de returnerar ett booleskt värde mot förekomsten av ett angivet webbelement.
Fram till dess, håll dig uppdaterad och automatisera rullgardinsmenyn med hjälp av WebDriver-verktyget - 'Välj klass'.
Rekommenderad läsning
- Hur man hittar element i Chrome- och IE-webbläsare för att bygga selen-skript - Selen-handledning # 7
- Gurka Selen Tutorial: Gurka Java Selen WebDriver Integration
- Kontrollera synligheten för webbelement med olika typer av WebDriver-kommandon - Selen Tutorial # 14
- Fördjupade förklaringar om förmörkelser för nybörjare
- Introduktion till Selen WebDriver - Selen Tutorial # 8
- Hur man använder CSS Selector för att identifiera webbelement för selen-skript - Selen-handledning nr 6
- Effektiv skriptning av selen och felsökning av scenarier - Selen-handledning # 27
- Felsökning av selenskript med loggar (Log4j-handledning) - Selen-handledning # 26