usage selenium select class
Nel tutorial precedente, abbiamo studiato i vari tipi di istruzioni assert disponibili nel framework di unit test basato su Java e le loro applicazioni con esemplari. Ribadendo il fatto che essendo un 'Ingegnere di test di automazione', le asserzioni giocano un ruolo molto decisivo e significativo nello sviluppo di script di test.
Andando avanti con i pochi tutorial in arrivo nella serie Selenium, ci concentreremo su gestire i vari tipi di elementi web disponibili sulle pagine web . Pertanto, in questo tutorial, considereremo 'Dropdown' ed esercitare le proprie strategie di gestione .
nome del sistema operativo nel computer
Prima di passare alla definizione del problema e alla sua risoluzione, prendiamoci un momento per introdurre e creare una comprensione dell'applicazione in prova. Come esempio, abbiamo creato un file pagina HTML fittizia composto da elementi web multipli e assortiti.
Gli elementi web elementari che costituiscono la pagina web sono:
- Collegamento ipertestuale
- Pulsante
- Cadere in picchiata
Si prega di fare riferimento alla seguente pagina web di cui sopra:
Cosa imparerai:
- Spiegazione dell'applicazione in prova
- Scenario da automatizzare
- Codice WebDriver utilizzando Selenium Select Class
- Procedura dettagliata del codice
- Conclusione
- Lettura consigliata
Spiegazione dell'applicazione in prova
Abbiamo progettato la pagina web in modo da includere alcuni tipi fondamentali di elementi web.
- Collegamento ipertestuale : Sono stati forniti i due collegamenti ipertestuali 'Google' e 'abodeQA' che reindirizzano l'utente rispettivamente a 'https://www.google.co.in/' e 'http://www.abodeqa.com/' sull'evento clic.
- Cadere in picchiata : I tre menu a tendina sono stati creati per selezionare colori, frutti e animali con un valore già impostato di default.
- Pulsante : È stato creato un pulsante 'provalo' per mostrare la finestra a comparsa con i pulsanti OK e Annulla all'evento del clic.
Segue il codice HTML utilizzato per creare la suddetta pagina web:
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 da automatizzare
- Avvia il browser web e apri la pagina web
- Fare clic sul collegamento ipertestuale 'Google'
- Torna alla pagina web originale
- Seleziona il menu a discesa 'Verde' a colori
- Seleziona 'Orange' nel menu a discesa della frutta
- Seleziona 'Elefante' nel menu a discesa degli animali
Codice WebDriver utilizzando Selenium Select Class
Si prega di notare che, per la creazione di script, utilizzeremo il progetto 'Learning_Selenium' creato nel precedente tutorial.
Passo 1: Crea una nuova classe java denominata 'HandlingDropDown' nel progetto 'Learning_Selenium'.
Passo 2: Copia e incolla il codice seguente nella classe 'HandlingDropDown.java'.
Di seguito è riportato lo script di test che è equivalente allo scenario sopra menzionato:
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(); } }
Procedura dettagliata del codice
Dichiarazioni di importazione
- importare org. openqa.selenium.support.ui.Select - Importa questo pacchetto prima della creazione dello script. Il pacchetto fa riferimento alla classe Select, necessaria per gestire l'elenco a discesa.
Istanza dell'oggetto per la classe Select
Select selectByValue = new Select (driver.findElement (By.id (“SelectID_One”)));
Creiamo una variabile di riferimento per la classe Select e la istanziamo utilizzando la classe Select e l'identificatore per il menu a discesa.
L'identificatore o il valore del localizzatore per l'elenco a discesa può essere trovato utilizzando le tecniche discusse nei tutorial iniziali (utilizzando Selenium IDE e firebug).
Tieni presente che l'identificatore di un menu a discesa può essere trovato come di seguito:
Passo 1: La maggior parte o quasi tutti gli elementi a discesa sono definiti nel tag con più valori (valori che possono essere impostati nel menu a discesa) che sono definiti sotto i tag.
Impostazione del valore nel menu a discesa utilizzando selectByValue () metodo
selectByValue.selectByValue ('greenvalue');
Nel comando java sopra, selezioniamo il valore 'green' nel menu a discesa utilizzando il selectByValue () metodo e parametrizzandolo con il testo presente nell'attributo value.
Impostazione del valore nel menu a discesa utilizzando il metodo selectByVisibleText ()
selectByValue.selectByVisibleText ('Lime');
Nel comando java sopra, selezioniamo il valore 'Lime' nel menu a discesa utilizzando il selectByVisibleText () e parametrizzandolo con il testo presente sull'interfaccia utente o il testo presente tra i tag di apertura e chiusura.
Impostazione del valore nel menu a discesa utilizzando selectByIndex () metodo
selectByValue.selectByIndex ('2');
Nel comando java sopra, selezioniamo il terzo valore nel menu a discesa utilizzando il selectByIndex () e parametrizzandolo con il valore di indice dell'elemento che si desidera selezionare nel menu a tendina.
Tenere presente che il valore dell'indice inizia con '0'.
Conclusione
In questo tutorial, abbiamo cercato di farti conoscere la classe Select di WebDriver che viene utilizzata per gestire gli elementi a discesa presenti nella pagina web. Ti abbiamo anche informato sui metodi che possono essere utilizzati per popolare il valore nell'elenco a discesa.
Ecco il riepilogo dell'articolo:
- La classe Select di WebDriver viene utilizzata per gestire gli elementi a discesa presenti in una pagina web.
- Prima dello scripting effettivo, è necessario importare un pacchetto per poter creare uno script WebDriver per gestire un menu a discesa e rendere accessibile la classe Select.
- importare org. openqa.selenium.support.ui.Select;
- Creiamo una variabile di riferimento per la classe Select e la istanziamo utilizzando la classe Select e l'identificatore per il menu a discesa.
- Selezionare selectByValue = new Select (driver.findElement (By.id (“SelectID_One”)));
- L'identificatore o il valore del localizzatore per il rilascio può essere trovato utilizzando Selenium IDE e firebug.
- Idealmente, ci sono tre modi per selezionare il valore desiderato nel menu a tendina tra quelli elencati.
- selectByValue ()
- selectByVisibleText ()
- selectByIndex ()
- Il seguente comando java viene utilizzato per selezionare il colore 'verde' nel menu a discesa. Tieni presente che il valore nell'elenco a discesa viene selezionato utilizzando il selectByValue ()
- selectByValue ('valore verde');
- Il seguente comando java viene utilizzato per selezionare il frutto 'Lime' nel menu a discesa. Tieni presente che il valore nell'elenco a discesa viene selezionato utilizzando il selectByVisibleText ()
- selectByVisibleText ('Lime');
- Il seguente comando java viene utilizzato per selezionare il terzo valore tra tutte le opzioni disponibili elencate per il menu a discesa. Tieni presente che il valore nell'elenco a discesa viene selezionato utilizzando il selectByIndex ()
- selectByIndex ('2');
Prossimo tutorial n. 14 : Nella prossima esercitazione, discuteremo di vari tipi di comandi in WebDriver come isSelected (), isEnabled () e isDispalyed () quelli restituiscono un valore booleano rispetto alla presenza di un elemento web specificato.
Fino ad allora, resta sintonizzato e automatizza il menu a discesa utilizzando l'utilità WebDriver - 'Seleziona classe'.
Lettura consigliata
- Come individuare gli elementi nei browser Chrome e IE per la creazione di script di selenio - Tutorial sul selenio n. 7
- Esercitazione sul selenio di cetriolo: integrazione con WebDriver di selenio Java di cetriolo
- Verifica la visibilità degli elementi Web utilizzando vari tipi di comandi WebDriver - Selenium Tutorial # 14
- Tutorial approfonditi su Eclipse per principianti
- Introduzione a Selenium WebDriver - Selenium Tutorial # 8
- Come utilizzare il selettore CSS per identificare gli elementi Web per gli script Selenium - Selenium Tutorial # 6
- Scripting efficiente del selenio e scenari di risoluzione dei problemi - Tutorial sul selenio n. 27
- Debug degli script di selenio con i registri (tutorial di Log4j) - Esercitazione di selenio # 26