4 Passi per Scegliere lo Strumento di Test Automation Perfetto
Nel mondo dello sviluppo software, l’automazione dei test è ormai fondamentale per ogni progetto, e questo vale che si utilizzi la metodologia tradizionale o quella agile.
Scegliere lo strumento (o il framework) di test automation giusto però non è sempre facile. Esistono tantissimi strumenti sul mercato, e nessuno di questi è perfetto per ogni esigenza. Per scegliere quello migliore, quindi, è fondamentale analizzare attentamente le caratteristiche del tuo progetto e le necessità della tua azienda.
Selezionare lo strumento giusto è cruciale perché avrà un impatto diretto su tutto lo sforzo di automazione. Se lo strumento è valido e offre le funzionalità che ti servono, l’automazione diventa più veloce, più semplice ed efficace. Al contrario, se lo strumento non soddisfa le tue esigenze, rischi di sprecare tempo e denaro.
Ricorda, scegliere lo strumento giusto richiede del tempo, ma è un investimento che ti ripagherà a lungo termine.
Questa guida ti aiuterà a scegliere lo strumento di test automation perfetto per te in soli 4 passi:
Passo 1: Crea una lista dei requisiti.
Passo 2: Valuta strumenti e fornitori.
Passo 3: Verifica il tool scelto.
Passo 4: Prendi la decisione finale.
In parole povere,
- Capire di cosa avete bisogno
- Analizzare e confrontare i candidati
- Provare gli strumenti più promettenti
- Revisione e decisione
Passo 1: Fai un elenco dei requisiti
Prima di tutto devi capire esattamente di cosa hai bisogno. Per farlo, analizza a fondo i requisiti e i vincoli (attuali e futuri) del tuo progetto, insieme alle necessità della tua azienda, soprattutto se stai cercando uno strumento comune da utilizzare per tutti i progetti.
Comincia col rispondere alle seguenti domande:
- Cosa automatizzare? E cosa non automatizzare?
- Come automatizzare?
- Entro quali tempi?
- Chi eseguirà i test automatizzati?
Prendere le decisioni giuste su chi, cosa e quando automatizzare è fondamentale per scegliere lo strumento giusto. Sbagliare potrebbe farti sprecare tempo e denaro preziosi.
Una volta che hai ben chiaro di cosa hai bisogno, puoi definire una serie di criteri per valutare ogni strumento che ti interessa.
Ecco una breve lista iniziale di criteri:
Criterio | Descrizione |
Costi di licenza | Costo di acquisto e licenza dello strumento. |
Supporto tecnico e assistenza | Include formazione, documentazione, tutorial, guide… |
Tempo di apprendimento | Tempo e costo per formare le risorse. |
Supporto per applicazioni Web, Desktop e Mobile | Utilizzare strumenti diversi per piattaforme diverse complica la gestione. Meglio scegliere uno strumento che supporti più piattaforme. |
Riconoscimento oggetti | In che modo lo strumento di automazione identifica gli oggetti dell’interfaccia grafica (UI) da testare? Tramite UI Map o repository di oggetti? Attraverso immagini? In automatico? |
Supporto per Keyword-Driven Testing e Data-Driven Testing | Un framework Keyword-Driven ha tutte le operazioni e le istruzioni di test specificate da keyword scritte in un file esterno (Excel, CSV). I test Data-Driven leggono i dati da archivi esterni, come file Excel, CSV, XML o database, invece di utilizzare valori codificati. |
Linguaggi supportati (Java, C# e altri) | In alcuni casi, il tester deve scrivere del codice. Devi considerare le competenze di programmazione necessarie e il linguaggio che verrà utilizzato nel tuo progetto di automazione. Dovresti anche considerare i linguaggi di programmazione utilizzati nella tua azienda. In questo modo, potrai ottenere aiuto dagli sviluppatori. |
Test Report intuitivi | I report di test devono essere semplici, ma utili per il management. |
Web Test multi-browser e multi-dispositivo (mobile) | Il test multi-browser è la pratica di assicurarsi che i siti web e le web app che crei funzionino sui principali browser web (come Chrome, Firefox, Edge, Safari). Il test multi-dispositivo controlla come un sito web o un’applicazione si comporta su diversi dispositivi mobili (smartphone, tablet, ecc.). |
Supporto CI/DevOps | Supporto per l’integrazione con strumenti di Continuous Integration per automatizzare build e deployment. |
Livello di competenze di programmazione richieste | Le conoscenze minime di programmazione necessarie per scrivere test automatizzati. |
Livello di competenze ed esperienza richieste | Le competenze di testing minime necessarie per automatizzare i test. |
Ricorda che i problemi più comuni in questo mercato sono:
- Costo elevato: spesso i tool commerciali sono troppo costosi per i piccoli progetti.
- Mancanza di supporto: c’è chi offre poca assistenza in caso di problemi.
- Troppa esperienza richiesta: alcuni strumenti richiedono competenze tecniche avanzate che il tuo gruppo potrebbe non avere.
- Programmazione obbligatoria: non tutti amano scrivere codice!
- Difficoltà di integrazione: far dialogare il tuo tool con altri strumenti potrebbe diventare un incubo.
Passo 2: Valutare strumenti e fornitori
Dopo aver definito i requisiti/criteri, dovete analizzare gli strumenti commerciali e open-source disponibili sul mercato che corrispondono ai vostri requisiti.
Potete iniziare la vostra analisi di mercato dagli strumenti con cui voi o altri membri del progetto avete avuto esperienza in precedenza, oltre agli strumenti consigliati nei newsgroup, nei forum di test, nelle conferenze, su Wikipedia (https://en.wikipedia.org/wiki/Comparison_of_GUI_testing_tools) e altre fonti.
Questa fase produce in genere un elenco di 20-30 prodotti. Nella seconda fase, l’elenco va ristretto a 3-5 strumenti concentrandosi sui vostri “must-have” e i criteri chiave.
Compilate una matrice di confronto degli strumenti per prendere una decisione informata in base alle vostre esigenze.
STEP 3: Verificare la scelta
Una volta individuato il vincitore preliminare tra i framework di test automatizzati, valutate la qualità di quello strumento utilizzando una prova e lanciando un pilota. Ogni fornitore di strumenti fornisce un periodo di valutazione.
Nel caso in cui abbiate ancora dei dubbi sullo strumento, o se avete bisogno di provarlo nel vostro ambiente di lavoro attuale, è consigliabile organizzare un Proof of Concept (PoC).
Un PoC fornisce un quadro più chiaro dello strumento, ma aiuta anche a capire se sono coinvolte le persone giuste, se gli obiettivi del test sono ben definiti e così via. Inoltre, facilita l’identificazione dei possibili rischi anche se non si ha familiarità con il nuovo strumento o la nuova tecnologia.
Durante una prova o un PoC:
- Scegliere alcuni scenari.
- Automatizzare gli scenari scelti.
- Analizzare i risultati.
Ora avete tutte le informazioni necessarie per prendere una decisione informata.
STEP 4: Prendere la decisione finale
Il passo successivo consiste nel prendere una decisione e scegliere lo strumento con il maggior potenziale per la vostra organizzazione.
La valutazione finale richiede una conoscenza approfondita dell’argomento: significa che dovete capire quali sono i punti di forza e di debolezza dello strumento, e il (bilanciamento tra) costi e benefici.
Se avete fatto tutto correttamente, il candidato migliore è quello con i punteggi più alti che avete calcolato, e vedrete perché.
Infine, preparate un documento di presentazione per comunicare i risultati del processo di selezione a tutte le parti interessate e ai responsabili delle decisioni.
Ora non vi resta altro da fare che firmare il contratto.
Conclusione
Il successo dei test di automazione dipende in larga misura dalla scelta dei giusti strumenti di test. Ci sono molte cose da considerare quando si decide su quali strumenti di test investire. Il prezzo, la funzionalità, l’installazione, la formazione e l’assistenza clienti sono alcuni dei criteri chiave da valutare quando si decide quale direzione prendere. Una vasta gamma di fattori gioca un ruolo nella scelta finale: sapere esattamente di cosa avete bisogno e testare le vostre scelte migliori renderà la decisione un po’ più facile.