Come automatizzare i test con Selenium IDE

4,428 views

Published on

Un'introduzione approfondita al tool Selenium IDE. Cos'è, come funziona e come creare un primo Test Case. Esempi di come migliorare il codice del test case e come creare delle suite.

2 Comments
3 Likes
Statistics
Notes
No Downloads
Views
Total views
4,428
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
0
Comments
2
Likes
3
Embeds 0
No embeds

No notes for slide

Come automatizzare i test con Selenium IDE

  1. 1. Agile Testing Automatizzare i test con Selenium IDE di Stefano Trojani By Stefano Trojani 1
  2. 2. Automatizzare i test con Selenium IDE Cosa è Selenium IDE 2 By Stefano Trojani – All rights reserved
  3. 3. Automatizzare i test con Selenium IDE Cos’è Selenium IDE Selenium è software di automazione dei test Web Based Open Source Selenium è un tool che supporta il rapido sviluppo di test automatici web-based Selenium funziona ovunque sia supportato il javascritp (quindi es: non dentro il flash) Selenium può essere agganciato a altri linguaggio come: java, php, ruby, python… Selenium scrive Test Cases usando differenti linguaggi tra cui l’HTML 3 By Stefano Trojani – All rights reserved
  4. 4. Automatizzare i test con Selenium IDE I vantaggi nell’uso di Selenium IDE Selenium IDE è gratis Selenium IDE è facile da installare come plugin di Mozilla Firefox Selenium IDE può creare Test Case in modo molto facile (semplicemente «registrando» la navigazione nel browser) Selenium IDE può essere usato in modo più «puntuale» investigando il codice (es: con firebug) per identificare dei blocci di codice univoci da richiamare 4 By Stefano Trojani – All rights reserved
  5. 5. Automatizzare i test con Selenium IDE Installare Selenium IDE 1) Selenium può essere installato semplicemente usando il Browser Firefox e scaricando IDE dalla pagina del sito SeleniumHQ http://www.seleniumhq.org/download/ 2) Selezionare “Install Now” 3) Una volta installato sarà necessario riavviare il Browser 5 By Stefano Trojani – All rights reserved
  6. 6. Automatizzare i test con Selenium IDE Avviare Selenium IDE Per avviare Selenium IDE basterà cliccare “opzioni” di Firefox e successivamente cliccare sull’icona corrispondente. Scorciatoia (Ctrl+Alt+S) 6 By Stefano Trojani – All rights reserved
  7. 7. L’interfaccia di Selenim IDE Comandi di esecuzione Tasto “registra” Spazio dedicato ai comandi Interfaccia di inserimento comandi Finestra di Log, Reference, etc… 7 By Stefano Trojani – All rights reserved
  8. 8. Automatizzare i test con Selenium IDE I comandi più usati (e semplici) AZIONE COMANDO Aprire una pagina open Cliccare un ogetto nella pagina click o clickAndWait Inserire dei valori nelle textarea (es: uno username) type Selezionare un valore da una dropdown select Salvare un variable store Verificare un contenuto della pagina verifyTextPresent 8 By Stefano Trojani – All rights reserved
  9. 9. Automatizzare i test con Selenium IDE Rimbocchiamoci le maniche: Creiamo un Test Case di prova 9 By Stefano Trojani – All rights reserved
  10. 10. Automatizzare i test con Selenium IDE Creazione di un Test Case di prova Proviamo adesso a creare un Test Case usando Selenium IDE sempicemente “registando” le azioni. Testeremo la Login ad una webmail su un importante sito web. La login su cui vogliamo fare il TC 10 By Stefano Trojani – All rights reserved
  11. 11. Automatizzare i test con Selenium IDE «Registrazione» di un Test Case 1) Avviamo la “registazione” 2) Facciamo le operazioni sul sito web (loggiamoci) 3) Stoppiamo la registrazione La login su cui vogliamo fare il TC By Stefano Trojani – All rights reserved 11
  12. 12. Automatizzare i test con Selenium IDE Esecuzione del Test Case Basterà pigiare l’icona per far rieseguire le stesse operazioni a Selenium IDE Nota: A video il browser inizierà a muoversi facendo le stesse operazioni che abbiamo registrato. 12 By Stefano Trojani – All rights reserved
  13. 13. Automatizzare i test con Selenium IDE Analizziamo un po’ il codice generato…. Test Case scritto “registrando” open - http://www.webamil.sito.com selectWindow - null type - div[3]/div/div[1]/div[2]/div[2]/form/fieldset/input[1] - USERNAME Type - div[3]/div/div[1]/div[2]/div[2]/form/fieldset/input[2] - PASSWORD Select div[3]/div/div[1]/div[2]/div[2]/form/fieldset/div[2]/input - label=Open-Xchange clickAndWait - name=login Pause - 1000 Codice “sporco” es: xpath 13 By Stefano Trojani – All rights reserved
  14. 14. Automatizzare i test con Selenium IDE Tre tipi di “pulizia” nel codice xpath type - div[3]/div/div[1]/div[2]/div[2]/form/fieldset/input[1] – USERNAME  Facile da usare (ci sono anche plugin) Pericoloso da manutenere (basta cambiare un tag nell’intera pagina ed il test smette di funzionare) css type - //input[@class=‘subject’] – USERNAME  abbastanza sicuro e stabile  Laborioso a identificare (meglio usare Firebug) id type – id=writer_field_to- USERNAME  Sicuro, univoco, pulito Raramente il codice delle pagine è così pulito da avere un ID per ogni oggetto By Stefano Trojani – All rights reserved 14
  15. 15. Automatizzare i test con Selenium IDE Ispezioniamo il codice per migliorarlo Analizziamo un po’ il codice della pagina con Firebug https://addons.mozilla.org/enUS/firefox/addon/firebug/ E cerchiamo di identificare gli elementi nel codice per renderlo più “pulito”… 15 By Stefano Trojani – All rights reserved
  16. 16. Automatizzare i test con Selenium IDE Guardiamo i “miglioramenti” del test case Test Case corretto manualmente (utilizzando firebug) open - http://www.webamil.sito.com selectWindow - null type - name=user_name - USERNAME Type - name=user_pass - PASSWORD Select - name=webmail - label=Open-Xchange clickAndWait - name=login Pause - 1000 Codice “pulito” ed univoco 16 By Stefano Trojani – All rights reserved
  17. 17. Automatizzare i test con Selenium IDE Creazione di Suite E’ possibile inoltre creare delle Suite: un insieme di test case di Selenium che possono essere eseguiti tutti insieme (a cascata) semplicemente pigiando il bottone su Selenim IDE Una suite di test formata da tanti test case By Stefano Trojani – All rights reserved 17
  18. 18. Automatizzare i test con Selenium IDE Allora… ho trovato il paradiso! No, ci dei limiti… 18 By Stefano Trojani – All rights reserved
  19. 19. Automatizzare i test con Selenium IDE I limiti di Selenium IDE Selenium IDE funziona solo come plugin sul Browser Firefox (non è quindi possibile trstare altri browser) Selenium IDE supporta solo script scritti nel suo linguaggio proprietario (Selense) Selenium IDE incontra forti problemi nella gestione di contenuti complessi o dinamici (es: iframes, istanze javascript, ajax, codice html «sporco»…) 19 By Stefano Trojani – All rights reserved
  20. 20. Automatizzare i test con Selenium IDE Rassumendo  Pregi Selenium IDE permette di testare in modo semplice (con differenti livelli di complessità che dipendono dalla conoscenza del prodotto) interfacce HTML. Possono essere gestiti molti test case raccolti in Suite ed eseguiti tutti insieme.  Svantaggi Selenium IDE funziona solo come plugin sul Browser Firefox (non è quindi possibile trstare altri browser) ed incontra forti problemi nella gestione di contenuti complessi o dinamici 20 By Stefano Trojani – All rights reserved
  21. 21. Automatizzare i test con Selenium… It’s UP to YOU! By Stefano Trojani – All rights reserved 21
  22. 22. Automatizzare i test con Selenium IDE Grazie! 22 By Stefano Trojani – All rights reserved

×