Robot Framework - Lavorare con il menu a discesa
In questo capitolo impareremo come lavorare con il menu a discesa usando la Selenium Library.
Configurazione del progetto per il test a discesa
Per prima cosa creeremo un progetto in Ride per funzionare con i browser. Apri corsa utilizzando ride.py dalla riga di comando -
Fare clic su Nuovo progetto e assegnare un nome al progetto.
Il nome dato è a discesa. Fare clic su OK per salvare il progetto.
Fare clic con il pulsante destro del mouse sul nome del progetto creato e fare clic su Nuovo scenario di test -
Assegnare un nome allo scenario di test e fare clic su OK per salvarlo.
Abbiamo finito con la configurazione del progetto. Ora scriveremo casi di test per il menu a discesa. Poiché abbiamo bisogno della libreria Selenium, dobbiamo importare la stessa nel nostro progetto.
Fare clic sul progetto sul lato sinistro e utilizzare la libreria da Aggiungi importazione come mostrato di seguito -
Ora, fai clic su Libreria . Apparirà una schermata in cui è necessario inserire il nome della libreria -
Fare clic su OK e la libreria verrà visualizzata nelle impostazioni.
Il nome dato deve corrispondere al nome della cartella installata in site-packages.
Nel caso in cui il nome non corrisponda, il nome della libreria verrà visualizzato in rosso -
L'importazione della libreria in rosso è buona quanto la libreria non esiste all'interno di python, quindi ora abbiamo finito con l'importazione della libreria selenio.
Scenario di test per menu a discesa
Il test case per il menu a discesa selezionerà il valore dal menu a discesa. Per lavorare con questo, abbiamo bisogno del localizzatore (identificatore) per quel menu a discesa.
Considera la seguente visualizzazione html per il menu a discesa:
<select name = "carbrand">
<option value = "">Select car brand..</option>
<option value = "audi">AUDI</option>
<option value = "bmw">BMW</option>
<option value = "chevrolet">CHEVROLET</option>
<option value = "datsun">DATSUN</option>
</select>
Per il menu a discesa, il nome è il localizzatore . Nell'esempio sopra, il nome è carbrand . Abbiamo anche bisogno del valore in modo da poter selezionare lo stesso. I valori nell'esempio sopra sono: audi, bmw, chevrolet e datsun .
Ora creeremo una pagina di test con menu a discesa, apriremo la stessa nel browser e selezioneremo il valore dal menu a discesa.
I dettagli dello scenario di test saranno i seguenti:
Apri l'URL del browser - http://localhost/robotframework/dropdown.html in cromo
Immettere i dettagli del menu a discesa
Esegui il test case
Durante la scrittura della parola chiave per i casi di test in RIDE, premere Ctrl + Barra spaziatrice. Questo fornisce tutti i dettagli del comando.
Per il menu a discesa, abbiamo tre modi per farlo:
- Seleziona da elenco per indice
- Seleziona da elenco per etichetta
- Seleziona da elenco per valore
Lavoreremo su un esempio per mostrare il lavoro per tutti i casi sopra menzionati.
Nella nostra pagina di test, creeremo 3 menu a discesa e utilizzeremo i casi di test sopra per selezionare il menu a discesa per indice, etichetta e valore.
dropdown.html
<html>
<head>
<title>Dropdown</title>
</head>
<body>
<form name="myform" method="POST">
<div>
Dropdown By Index:
<select name = "months">
<option value = "">Select Months.</option>
<option value = "Jan">January</option>
<option value = "Feb">February</option>
<option value = "Mar">March</option>
<option value = "Apr">April</option>
<option value = "May">May</option>
<option value = "Jun">June</option>
<option value = "Jul">July</option>
<option value = "Aug">August</option>
<option value = "Sept">September</option>
<option value = "Oct">October</option>
<option value = "Nov">November</option>
<option value = "Dec">December</option>
</select>
</div>
<br/>
<br/>
<div>
Dropdown By Label:
<select name = "days">
<option value = "">Select Day..</option>
<option value = "01">01</option>
<option value = "02">02</option>
<option value = "03">03</option>
<option value = "04">04</option>
<option value = "05">05</option>
<option value = "06">06</option>
<option value = "07">07</option>
<option value = "08">08</option>
<option value = "09">09</option>
<option value = "10">10</option>
<option value = "11">11</option>
<option value = "12">12</option>
<option value = "13">13</option>
<option value = "14">14</option>
<option value = "15">15</option>
<option value = "16">16</option>
<option value = "17">17</option>
<option value = "18">18</option>
<option value = "19">19</option>
<option value = "20">20</option>
<option value = "21">21</option>
<option value = "22">22</option>
<option value = "23">23</option>
<option value = "24">24</option>
<option value = "25">25</option>
<option value = "26">26</option>
<option value = "27">27</option>
<option value = "28">28</option>
<option value = "29">29</option>
<option value = "30">30</option>
<option value = "31">31</option>
</select>
</div>
<br/>
<br/>
<div>
Dropdown By Value:
<select name = "year">
<option value = "">Select year..</option>
<option value = "0">2000</option>
<option value = "1">2001</option>
<option value = "2">2002</option>
<option value = "3">2003</option>
<option value = "4">2004</option>
<option value = "5">2005</option>
<option value = "6">2006</option>
<option value = "7">2007</option>
<option value = "8">2008</option>
<option value = "9">2009</option>
<option value = "10">2010</option>
<option value = "11">2011</option>
<option value = "12">2012</option>
<option value = "13">2013</option>
<option value = "14">2014</option>
<option value = "15">2015</option>
<option value = "16">2016</option>
<option value = "17">2017</option>
<option value = "18">2018</option>
</select>
</div>
</form>
</body>
</html>
Aggiungeremo casi di test per tutte e 3 le selezioni a discesa in Ride.
Per l'indice, dobbiamo passare il localizzatore di quel menu a discesa: nome o id e l'indice dell'elemento che deve essere selezionato.
Selezionare Elenca per indice - Esempio
<select name = "months">
<option value = "">Select Months.</option> // index 0
<option value = "Jan">January</option> //index 1
<option value = "Feb">February</option> // index 2
<option value = "Mar">March</option> // index 3
<option value = "Apr">April</option> // index 4
<option value = "May">May</option> // index 5
<option value = "Jun">June</option> // index 6
<option value = "Jul">July</option> // index 7
<option value = "Aug">August</option> // index 8
<option value = "Sept">September</option> //index 9
<option value = "Oct">October</option> //index 10
<option value = "Nov">November</option> //index 11
<option value = "Dec">December</option> // index 12
</select>
Ora, vogliamo selezionare il mese come maggio, quindi l'indice da fornire nel caso di test è 5.
L'etichetta viene visualizzata quando apri il menu a discesa sullo schermo.
Se desideri selezionare un giorno, puoi sceglierne uno dal menu a discesa.
Seleziona da elenco per valore
Ecco l'elenco dell'anno. L'elenco ha valori da 0 a 18.
<select name = "year">
<option value = "">Select year..</option>
<option value = "0">2000</option>
<option value = "1">2001</option>
<option value = "2">2002</option>
<option value = "3">2003</option>
<option value = "4">2004</option>
<option value = "5">2005</option>
<option value = "6">2006</option>
<option value = "7">2007</option>
<option value = "8">2008</option>
<option value = "9">2009</option>
<option value = "10">2010</option>
<option value = "11">2011</option>
<option value = "12">2012</option>
<option value = "13">2013</option>
<option value = "14">2014</option>
<option value = "15">2015</option>
<option value = "16">2016</option>
<option value = "17">2017</option>
<option value = "18">2018</option>
</select>
Se vuoi selezionare un anno qualsiasi, prendi il valore corrispondente all'anno e aggiungi lo stesso nel caso di test. Ad esempio, se si desidera selezionare l'anno 2017, il valore è 17.
Ecco l'elenco finale dei casi di test:
Dopo l'esecuzione, ecco la selezione effettuata per i menu a discesa in base al caso di test:
Dettagli di esecuzione
Dettagli del rapporto
Dettagli registro
Dettagli dello scenario di test dal registro
Conclusione
Abbiamo visto come lavorare con il menu a discesa per valore, indice ed etichetta. Possiamo fare riferimento a log e report per ottenere i dettagli del test case eseguito.