Come utilizzare Selenium IDE con gli script & Comandi (asserisci, verifica)

Sommario:

Anonim

Useremo il sito web di Mercury Tours come nostra applicazione web in prova. È un sistema di prenotazione di voli online che contiene tutti gli elementi di cui abbiamo bisogno per questo tutorial. Il suo URL è http://demo.guru99.com/test/newtours/ e questo sarà il nostro URL di base.

Crea uno script registrando

Creiamo ora il nostro primo script di test in Selenium IDE utilizzando il metodo più comune: registrando. Successivamente, eseguiremo il nostro script utilizzando la funzione di riproduzione.

Passo 1

  • Avvia Firefox e Selenium IDE.
  • Digita il valore per il nostro URL di base: http://demo.guru99.com/test/newtours/.
  • Attiva il pulsante Registra (se non è ancora attivato per impostazione predefinita).
Passo 2

In Firefox, vai a http://demo.guru99.com/test/newtours/. Firefox dovrebbe portarti a una pagina simile a quella mostrata di seguito.

Passaggio 3
  • Fai clic con il pulsante destro del mouse su uno spazio vuoto all'interno della pagina, come nel logo Mercury Tours nell'angolo in alto a sinistra. Questo farà apparire il menu contestuale di Selenium IDE. Nota: non fare clic su oggetti o immagini con collegamenti ipertestuali
  • Seleziona l'opzione "Mostra comandi disponibili".
  • Quindi, seleziona "assertTitle exact: Welcome: Mercury Tours". Questo è un comando che assicura che il titolo della pagina sia corretto.
Passaggio 4
  • Nella casella di testo "Nome utente" di Mercury Tours, digita un nome utente non valido, "invalidUNN".
  • Nella casella di testo "Password", digita una password non valida, "invalidPWD".
Passaggio 5
  • Fare clic sul pulsante "Accedi". Firefox dovrebbe portarti a questa pagina.
Passaggio 6

Disattiva il pulsante di registrazione per interrompere la registrazione. Il tuo script dovrebbe ora assomigliare a quello mostrato di seguito.

Passaggio 7

Ora che abbiamo finito con il nostro script di test, lo salveremo in un test case. Nel menu File, seleziona "Salva test case". In alternativa, puoi semplicemente premere Ctrl + S.

Passaggio 8
  • Scegli la posizione desiderata, quindi assegna al test case "Invalid_login".
  • Fare clic sul pulsante "Salva".
Passaggio 9.

Notare che il file è stato salvato come HTML.

Passaggio 10.

Torna a Selenium IDE e fai clic sul pulsante Riproduzione per eseguire l'intero script. Selenium IDE dovrebbe essere in grado di replicare tutto in modo impeccabile.

Introduzione ai comandi del selenio - Selenese

  • I comandi selenesi possono avere fino ad un massimo di due parametri: target e value.
  • I parametri non sono sempre richiesti. Dipende da quanti saranno necessari al comando.

3 tipi di comandi

Azioni

Questi sono comandi che interagiscono direttamente con gli elementi della pagina.

Esempio: il comando "clic" è un'azione perché interagisci direttamente con l'elemento su cui stai facendo clic.

Anche il comando "tipo" è un'azione perché stai inserendo valori in una casella di testo e la casella di testo te li mostra in cambio. C'è un'interazione bidirezionale tra te e la casella di testo.

Accessors

Sono comandi che consentono di memorizzare valori in una variabile.

Esempio: il comando "storeTitle" è una funzione di accesso perché "legge" solo il titolo della pagina e lo salva in una variabile. Non interagisce con nessun elemento della pagina.

Asserzioni

Sono comandi che verificano se una determinata condizione è soddisfatta.

3 tipi di asserzioni

  • Affermare . Quando un comando di "asserzione" fallisce, il test viene interrotto immediatamente.
  • Verifica . Quando un comando di "verifica" fallisce, Selenium IDE registra questo errore e continua con l'esecuzione del test.
  • WaitFor . Prima di procedere al comando successivo, i comandi "waitFor" attenderanno prima che una certa condizione diventi vera.
    • Se la condizione si verifica entro il periodo di attesa, il passaggio viene superato.
    • Se la condizione non si verifica, il passaggio non riesce. L'errore viene registrato e l'esecuzione del test procede al comando successivo.
    • Per impostazione predefinita, il valore di timeout è impostato su 30 secondi. È possibile modificarlo nella finestra di dialogo Opzioni IDE Selenium nella scheda Generale.

Affermare e verificare

Comandi comuni

Comando Numero di parametri Descrizione
Aperto 0-2

Apre una pagina utilizzando un URL.

click / clickAndWait 1

Clic su un elemento specificato.

tipo / tipoKeys 2

Digita una sequenza di caratteri.

VerifyTitle / assertTitle 1

Confronta il titolo della pagina effettivo con un valore previsto.

verifyTextPresent 1

Controlla se un determinato testo viene trovato all'interno della pagina.

verificaElementPresent 1

Verifica la presenza di un determinato elemento.

VerificareTable 2

Confronta il contenuto di una tabella con i valori previsti.

waitForPageToLoad 1

Sospende l'esecuzione finché la pagina non viene caricata completamente.

waitForElementPresent 1

Sospende l'esecuzione finché l'elemento specificato non diventa presente.

Crea manualmente uno script con Firebug

Ora, ricreamo lo stesso test case manualmente, digitando i comandi. Questa volta dovremo usare Firebug.

Passo 1
  • Apri Firefox e Selenium IDE.
  • Digita l'URL di base (http://demo.guru99.com/test/newtours/).
  • Il pulsante di registrazione dovrebbe essere disattivato.
Passaggio 2: fare clic sulla riga vuota più in alto nell'Editor.

Digita "apri" nella casella di testo del comando e premi Invio.

Passaggio 3
  • Naviga in Firefox al nostro URL di base e attiva Firebug
  • Nel riquadro Selenium IDE Editor, seleziona la seconda riga (la riga sotto il comando "open") e crea il secondo comando digitando "assertTitle" nella casella Command.
  • Sentiti libero di utilizzare la funzione di completamento automatico.
Passaggio 4
  • In Firebug, espandi il tag per visualizzare il tag .</li> <li>Fare clic sul valore del tag <title> (che è "Welcome: Mercury Tours") e incollarlo nel campo Target nell'Editor.</li> </ul> </td> </tr> <tr> <td><strong>Passaggio 5</strong> <ul> <li>Per creare il terzo comando, fare clic sulla terza riga vuota nell'Editor e digitare "digita" nella casella di testo Comando.</li> <li>In Firebug, fai clic sul pulsante "Ispeziona".</li> </ul> </td> </tr> <tr> <td>Fare clic sulla casella di testo Nome utente. Nota che Firebug ti mostra automaticamente il codice HTML per quell'elemento.</td> </tr> <tr> <td><strong>Passaggio 6</strong> <p>Si noti che la casella di testo Nome utente non ha un ID, ma ha un attributo NOME. Pertanto, utilizzeremo il suo NOME come localizzatore. Copia il valore NAME e incollalo nel campo Target in Selenium IDE.</p> <p>Sempre nella casella di testo Target, il prefisso "userName" con "name =" indica che Selenium IDE deve scegliere come target un elemento il cui attributo NAME è "userName".</p> <p>Digita "invalidUN" nella casella di testo Valore di Selenium IDE. Lo script di test dovrebbe ora assomigliare all'immagine qui sotto. Abbiamo finito con il terzo comando. Nota: invece di invalidUN, puoi inserire qualsiasi altra stringa di testo. Ma Selenium IDE distingue tra maiuscole e minuscole e digiti valori / attributi esattamente come nell'applicazione.</p> </td> </tr> <tr> <td><strong>Passaggio 7</strong> <ul> <li>Per creare il quarto comando, digitare "digita" nella casella di testo Comando.</li> <li>Ancora una volta, usa il pulsante "Inspect" di Firebug per ottenere il localizzatore per la casella di testo "Password".</li> </ul> <ul> <li> <p>Incolla l'attributo NAME ("password") nel campo Target e anteponi "name ="</p> </li> <li> <p>Digita "invalidPW" nel campo Value in Selenium IDE. Lo script di test dovrebbe ora assomigliare all'immagine qui sotto.</p> </li> </ul> </td> </tr> <tr> <td><strong>Passaggio 8</strong> <ul> <li>Per il quinto comando, digita "clickAndWait" nella casella di testo Comando in Selenium IDE.</li> <li>Usa il pulsante "Ispeziona" di Firebug per ottenere il localizzatore per il pulsante "Accedi".</li> </ul> <ul> <li>Incolla il valore dell'attributo NAME ("login") nella casella di testo Target e anteponi "name =".</li> <li>Il tuo script di prova dovrebbe ora assomigliare all'immagine qui sotto.</li> </ul> </td> </tr> </tbody> </table> <p><strong>Passaggio 9:</strong> salvare lo scenario di test nello stesso modo in cui abbiamo fatto nella sezione precedente.</p> <a id="menu-6"></a> <h2>Utilizzando il pulsante Trova</h2> <p><strong>Il pulsante Trova in Selenium IDE viene utilizzato per verificare se ciò che abbiamo inserito nella casella di testo Target è effettivamente l'elemento dell'interfaccia utente corretto.</strong></p> <p>Usiamo il test case Invalid_login che abbiamo creato nelle sezioni precedenti. Fare clic su qualsiasi comando con una voce Target, ad esempio il terzo comando.</p> <p>Fare clic sul pulsante Trova. Notare che la casella di testo Nome utente all'interno della pagina Mercury Tours viene evidenziata per un secondo.</p> <p>Ciò indica che Selenium IDE è stato in grado di rilevare e accedere correttamente all'elemento atteso. Se il pulsante Trova ha evidenziato un elemento diverso o nessun elemento, allora deve esserci qualcosa di sbagliato nel tuo script.</p> <a id="menu-7"></a> <h2>Esegui comando</h2> <p><strong>Ciò consente di eseguire qualsiasi singolo comando senza eseguire l'intero test case</strong> . Basta fare clic sulla riga che si desidera eseguire e quindi fare clic su "Azioni> Esegui questo comando" dalla barra dei menu o semplicemente premere "X" sulla tastiera.</p> <p><strong>Passaggio 1.</strong> Assicurati che il tuo browser sia sulla home page di Mercury Tours. Fare clic sul comando che si desidera eseguire. In questo esempio, fare clic sulla riga "type | userName | invalidUN".</p> <p><strong>Passaggio 2.</strong> Premere "X" sulla tastiera.</p> <p><strong>Passaggio 3.</strong> Osserva che la casella di testo del nome utente viene popolata con il testo "invalidUN"</p> <p><strong>L'esecuzione dei comandi in questo modo dipende fortemente dalla pagina che Firefox sta attualmente visualizzando</strong> . Ciò significa che se provi l'esempio sopra con la home page di Google visualizzata al posto di Mercury Tours, il tuo passaggio fallirà perché non è presente una casella di testo con un attributo "userName" nella home page di Google.</p> <a id="menu-8"></a> <h2>Punto di partenza</h2> <p><strong>Un punto di inizio è un indicatore che dice a Selenium IDE su quali linee inizierà l'esecuzione</strong> . <strong>Il suo tasto di scelta rapida è "S".</strong></p> <p>Nell'esempio sopra, la riproduzione inizierà sulla terza riga (digita | password | invalidPW). <strong>Puoi avere un solo punto di inizio in un singolo script di test.</strong></p> <p>Il punto di inizio è simile a Esegui comando in quanto dipendono dalla pagina attualmente visualizzata. Il punto di inizio fallirà se ti trovi sulla pagina sbagliata.</p> <a id="menu-9"></a> <h2>Punti di interruzione</h2> <p>I punti di interruzione sono indicatori che indicano a Selenium IDE dove mettere automaticamente in pausa il test. <strong>Il tasto di scelta rapida è "B".</strong></p> <p>L'evidenziazione gialla indica che il passaggio corrente è in sospeso. Ciò dimostra che Selenium IDE ha sospeso l'esecuzione in quel passaggio. <strong>Puoi avere più punti di interruzione in un caso di test.</strong></p> <a id="menu-10"></a> <h2>Passo</h2> <p>Ti consente di eseguire i comandi successivi uno alla volta dopo aver sospeso lo scenario di test. Usiamo lo scenario nella sezione precedente "Punti di interruzione".</p> <table> <tbody> <tr> <td width="50%"> </td> <td> <p><strong>Prima di fare clic su "Passaggio".</strong></p> <p>Il test case si ferma alla riga "clickAndWait | login".</p> </td> </tr> <tr> <td width="50%"> </td> <td> <p><strong>Dopo aver fatto clic su "Step".</strong></p> <p>La riga "clickAndWait | login" viene eseguita e si ferma al comando successivo (verifyTitle | Sign-on: Mercury Tours).</p> <p>Si noti che la riga successiva viene messa in pausa anche se non è presente alcun punto di interruzione. Questo è lo scopo principale della funzione Step: esegue i comandi successivi uno alla volta per darti più tempo per ispezionare il risultato dopo ogni passaggio.</p> </td> </tr> </tbody> </table> <a id="menu-11"></a> <h2>Aspetti importanti da notare quando si utilizzano altri formati nella vista sorgente</h2> <p><strong>Selenium IDE funziona bene solo con HTML - altri formati sono ancora in modalità sperimentale</strong> . <strong>NON</strong> è <strong>consigliabile</strong> creare o modificare test utilizzando altri formati in Source View perché c'è ancora molto lavoro necessario per renderlo stabile. Di seguito sono riportati i bug noti a partire dalla versione 1.9.1.</p> <ul> <li>Non sarà possibile eseguire la riproduzione né tornare alla visualizzazione tabella a meno che non si ripristini l'HTML.</li> <li>L'unico modo per aggiungere comandi in modo sicuro al codice sorgente è registrarli.</li> <li>Quando modifichi manualmente il codice sorgente, tutto andrà perso quando passi a un altro formato.</li> <li>Sebbene tu possa salvare il tuo test case mentre sei in visualizzazione sorgente, Selenium IDE non sarà in grado di aprirlo.</li> </ul> <p><strong>Il modo consigliato per convertire i test selenesi è utilizzare l'opzione "Esporta test case come ..." nel menu File e non tramite la vista sorgente.</strong></p> <a id="menu-12"></a> <h2>Sommario</h2> <ul> <li>Gli script di test possono essere creati registrando o digitando manualmente i comandi e i parametri.</li> <li>Quando si creano script manualmente, Firebug viene utilizzato per ottenere il localizzatore.</li> <li>Il pulsante Trova viene utilizzato per verificare che il comando sia in grado di accedere all'elemento corretto.</li> <li>Visualizza come tabella mostra uno script di test in forma tabulare mentre Visualizza come sorgente lo mostra in formato HTML.</li> <li>La modifica della visualizzazione del codice sorgente in un formato non HTML è ancora sperimentale.</li> <li>Non utilizzare la visualizzazione origine per creare test in altri formati. Utilizza invece le funzionalità di esportazione.</li> <li>I parametri non sono sempre richiesti. Dipende dal comando.</li> <li>Esistono tre tipi di comandi:</li> <ul> <li>Azioni: interagisce direttamente con gli elementi della pagina</li> <li>Accessors - "legge" una proprietà di un elemento e la memorizza in una variabile</li> <li>Asserzioni: confronta un valore effettivo con uno previsto</li> </ul> <li>Le asserzioni hanno tre tipi:</li> <ul> <li>Asserisci: in caso di errore, i passaggi successivi non vengono più eseguiti</li> <li>Verifica: in caso di errore, i passaggi successivi vengono comunque eseguiti.</li> <li>WaitFor - passa se la condizione specificata diventa vera entro il periodo di timeout; altrimenti fallirà</li> </ul> <li>I comandi più comuni sono:</li> <ul> <li>Aperto</li> <li>click / clickAndWait</li> <li>tipo / tipoKeys</li> <li>VerifyTitle / assertTitle</li> <li>verifyTextPresent</li> <li>verificaElementPresent</li> <li>VerificareTable</li> <li>waitForPageToLoad</li> <li>waitForElementPresent</li> </ul> </ul> </div> </article> <div id="container-5533149ee6411a5f99b370c693e87966"></div> </div> </div> </div> </div> </div> <aside class="col-lg-4 sidebar sidebar--right"> <div class="widget widget-popular-posts"> <h2 class="widget-title">Messaggi Popolari</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8223671-how-to-display-technical-names-in-sap" title="Come visualizzare i nomi tecnici in SAP" rel="bookmark"><img src="https://cdn.css-code.org/1361922/how_to_display_technical_names_in_sap.jpg.webp" loading="lazy" alt="Come visualizzare i nomi tecnici in SAP" title="Come visualizzare i nomi tecnici in SAP" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8223671-how-to-display-technical-names-in-sap" title="Come visualizzare i nomi tecnici in SAP" rel="bookmark">Come visualizzare i nomi tecnici in SAP 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8223672-sap-molga-list-for-all-countries" title="Elenco SAP Molga per TUTTI i paesi" rel="bookmark"><img src="https://cdn.css-code.org/8669956/sap_molga_list_for_all_countries.png.webp" loading="lazy" alt="Elenco SAP Molga per TUTTI i paesi" title="Elenco SAP Molga per TUTTI i paesi" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8223672-sap-molga-list-for-all-countries" title="Elenco SAP Molga per TUTTI i paesi" rel="bookmark">Elenco SAP Molga per TUTTI i paesi 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8223673-top-50-sap-interview-questions-and-answers" title="Top 50 domande di colloquio SAP e amp; Risposte" rel="bookmark"><img src="https://cdn.css-code.org/2976175/top_50_sap_interview_questions_ampamp_answers.jpg.webp" loading="lazy" alt="Top 50 domande di colloquio SAP e amp; Risposte" title="Top 50 domande di colloquio SAP e amp; Risposte" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8223673-top-50-sap-interview-questions-and-answers" title="Top 50 domande di colloquio SAP e amp; Risposte" rel="bookmark">Top 50 domande di colloquio SAP e amp; Risposte 2025</a></h3> </div> </div> </li> </ul> </div> <div class="widget widget-popular-posts"> <h2 class="widget-title">recensioni migliori per il mese</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8004345-96-localstorage-for-forms" title="# 96: localStorage for Forms - Trucchi CSS" rel="bookmark"># 96: localStorage for Forms - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8004346-98-playing-with-body-borders" title="# 98: Giocare con i bordi del corpo - Trucchi CSS" rel="bookmark"># 98: Giocare con i bordi del corpo - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8004347-9-starry-night-3d-background-with-the-parallax-effect" title="# 9: Notte stellata: sfondo 3D con effetto parallasse - Trucchi CSS" rel="bookmark"># 9: Notte stellata: sfondo 3D con effetto parallasse - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8004348-99-overview-of-html5-forms-types-attributes-and-elements" title="# 99: Panoramica dei tipi, degli attributi e degli elementi dei moduli HTML5 - Trucchi CSS" rel="bookmark"># 99: Panoramica dei tipi, degli attributi e degli elementi dei moduli HTML5 - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8004350-134-a-tour-of-a-site-in-progress-built-with-jekyll-grunt-sass-an-svg-system-and-more" title="# 134: Un tour di un sito in corso realizzato con Jekyll, Grunt, Sass, un sistema SVG e altro - Trucchi CSS" rel="bookmark"># 134: Un tour di un sito in corso realizzato con Jekyll, Grunt, Sass, un sistema SVG e altro - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8004351-156-lets-talk-about-webpack" title="# 156: Parliamo di Webpack - Trucchi CSS" rel="bookmark"># 156: Parliamo di Webpack - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222441-jira-tutorial-how-to-use-jira-software-tool-for-beginners" title="Tutorial JIRA: come utilizzare lo strumento software Jira per principianti" rel="bookmark">Tutorial JIRA: come utilizzare lo strumento software Jira per principianti</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222442-learn-sap-testing-create-your-first-sap-test-case" title="Impara il test SAP: crea il tuo primo caso di test SAP" rel="bookmark">Impara il test SAP: crea il tuo primo caso di test SAP</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222443-sap-security-tutorial-for-beginners-what-is-basics-and-definition" title="Tutorial sulla sicurezza SAP per principianti: cos'è, nozioni di base e amp; Definizione" rel="bookmark">Tutorial sulla sicurezza SAP per principianti: cos'è, nozioni di base e amp; Definizione</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222444-sap-solution-manager-solman-tutorial" title="Tutorial su SAP Solution Manager (SolMan)" rel="bookmark">Tutorial su SAP Solution Manager (SolMan)</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222446-apache-tutorials-for-beginners" title="Tutorial di Apache per principianti" rel="bookmark">Tutorial di Apache per principianti</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222447-top-22-best-domain-name-generators-in-2021" title="I 22 migliori generatori di nomi di dominio nel 2021" rel="bookmark">I 22 migliori generatori di nomi di dominio nel 2021</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222448-cloud-computing-tutorial-for-beginners-what-is-and-architecture" title="Tutorial sul cloud computing per principianti: cos'è & Architettura" rel="bookmark">Tutorial sul cloud computing per principianti: cos'è & Architettura</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222449-what-is-itil-itil-process-and-itil-framework-tutorial" title="Cos'è ITIL? Tutorial sul processo ITIL e sul framework ITIL" rel="bookmark">Cos'è ITIL? Tutorial sul processo ITIL e sul framework ITIL</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222451-20-best-free-youtube-video-downloader-apps-2021-update" title="20 migliori app GRATUITE per scaricare video da YouTube (aggiornamento 2021)" rel="bookmark">20 migliori app GRATUITE per scaricare video da YouTube (aggiornamento 2021)</a></h3> </div> </div> </li> </ul> </div> <div id="container-5533149ee6411a5f99b370c693e87966"></div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Articoli Più</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8222466-why-bugdefect-triage-is-important-in-software-testing" title="Perché la valutazione di bug / difetti è importante nei test del software" rel="bookmark"><img src="https://cdn.css-code.org/2819816/why_bugdefect_triage_is_important_in_software_testing.jpg.webp" loading="lazy" alt="Perché la valutazione di bug / difetti è importante nei test del software" title="Perché la valutazione di bug / difetti è importante nei test del software" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222466-why-bugdefect-triage-is-important-in-software-testing" title="Perché la valutazione di bug / difetti è importante nei test del software" rel="bookmark">Perché la valutazione di bug / difetti è importante nei test del software 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8222467-safe-methodology-tutorial-what-is-scaled-agile-framework" title="Tutorial sulla metodologia SAFe: che cos'è Scaled Agile Framework" rel="bookmark"><img src="https://cdn.css-code.org/8158002/safe_methodology_tutorial_what_is_scaled_agile_framework.png.webp" loading="lazy" alt="Tutorial sulla metodologia SAFe: che cos'è Scaled Agile Framework" title="Tutorial sulla metodologia SAFe: che cos'è Scaled Agile Framework" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222467-safe-methodology-tutorial-what-is-scaled-agile-framework" title="Tutorial sulla metodologia SAFe: che cos'è Scaled Agile Framework" rel="bookmark">Tutorial sulla metodologia SAFe: che cos'è Scaled Agile Framework 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8222468-agile-vs-scrum-difference-between-agile-methodology-and-scrum" title="Agile vs Scrum: differenza tra metodologia Agile e amp; Mischia" rel="bookmark"><img src="https://cdn.css-code.org/7459601/agile_vs_scrum_difference_between_agile_methodology_ampamp_scrum.png.webp" loading="lazy" alt="Agile vs Scrum: differenza tra metodologia Agile e amp; Mischia" title="Agile vs Scrum: differenza tra metodologia Agile e amp; Mischia" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222468-agile-vs-scrum-difference-between-agile-methodology-and-scrum" title="Agile vs Scrum: differenza tra metodologia Agile e amp; Mischia" rel="bookmark">Agile vs Scrum: differenza tra metodologia Agile e amp; Mischia 2025</a></h3> </div> </div> </li> </ul> </div> </aside> </div> </div> <footer class="footer footer--dark"> <div class="container"> <div class="footer__widgets"> <div class="row"> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Messaggi Popolari</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225958-20-best-internet-of-things-iot-companies-in-2021" title="20+ MIGLIORI società Internet Of Things (IoT) nel 2021" rel="bookmark">20+ MIGLIORI società Internet Of Things (IoT) nel 2021</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225959-top-53-itil-interview-questions-and-answers" title="Le 53 principali domande di intervista su ITIL e amp; Risposte" rel="bookmark">Le 53 principali domande di intervista su ITIL e amp; Risposte</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225960-what-is-jenkins-continuous-integration-ci-tool" title="Cos'è Jenkins? Strumento di integrazione continua (CI)" rel="bookmark">Cos'è Jenkins? Strumento di integrazione continua (CI)</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225962-20-best-continuous-integrationci-tools-in-2021" title="20 migliori strumenti di integrazione continua (CI) nel 2021" rel="bookmark">20 migliori strumenti di integrazione continua (CI) nel 2021</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225993-microsoft-mcsa-certification-exam-tutorial" title="Esercitazione sull'esame di certificazione Microsoft MCSA" rel="bookmark">Esercitazione sull'esame di certificazione Microsoft MCSA</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Scelta Del Redattore</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003370-073-cssing-the-footer-part-3" title="# 073: CSS del piè di pagina, parte 3 - Trucchi CSS" rel="bookmark"># 073: CSS del piè di pagina, parte 3 - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003371-074-cssing-the-footer-part-4" title="# 074: CSS del piè di pagina, parte 4 - Trucchi CSS" rel="bookmark"># 074: CSS del piè di pagina, parte 4 - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003372-076-custom-header-for-video-section" title="# 076: intestazione personalizzata per la sezione video - Trucchi CSS" rel="bookmark"># 076: intestazione personalizzata per la sezione video - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003373-075-custom-header-for-the-almanac" title="# 075: intestazione personalizzata per l'almanacco - Trucchi CSS" rel="bookmark"># 075: intestazione personalizzata per l'almanacco - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003374-072-cssing-the-footer-part-2" title="# 072: CSS del piè di pagina, parte 2 - Trucchi CSS" rel="bookmark"># 072: CSS del piè di pagina, parte 2 - Trucchi CSS</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Articoli Più</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003102-checked" title=": controllato - Trucchi CSS" rel="bookmark">: controllato - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003104-default" title=": predefinito - Trucchi CSS" rel="bookmark">: predefinito - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003105-descendant" title="Discendente - Trucchi CSS" rel="bookmark">Discendente - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003106-disabled" title=": disabilitato - Trucchi CSS" rel="bookmark">: disabilitato - Trucchi CSS</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003107-dir" title=": dir () - Trucchi CSS" rel="bookmark">: dir () - Trucchi CSS</a></h3> </div> </div> </li> </ul> </div> </div> </div> <p>© Copyright it.css-code.org, 2025 Settembre | <a href="https://it.css-code.org/about-site" title="Informazioni sul sito">Informazioni sul sito</a> | <a href="https://it.css-code.org/contacts" title="Contatti">Contatti</a> | <a href="https://it.css-code.org/privacy-policy" title="Politica sulla riservatezza">Politica sulla riservatezza</a>. </p> </div> </div> </footer> <link href="https://css-code.org/template/css/style.min.css" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'" /> </body> </html>