Come selezionare il miglior strumento di test di automazione?
Nell'articolo Miglioramento del processo di test, hai imparato i punti di miglioramento dal progetto Guru99 Bank. Utilizza automatizzato Testing invece di Test manuale. Ma i membri del team potrebbero chiederti:
La risposta a questa domanda è impegnativa perché ci sono molti fattori da considerare
- Desideri supportare le tue attività di test tramite uno strumento software, ma non conosci gli strumenti attualmente disponibili sul mercato
- Quale tipo di strumento si adatta meglio ai requisiti e al budget del progetto?
- Chi nel team ha le competenze per utilizzare lo strumento una volta acquistato
L'importanza della selezione dello strumento di test del software
Il successo in qualsiasi automazione di test dipende dall'identificazione dello strumento giusto per l'automazione. Selezionare lo strumento di test "corretto" per il tuo progetto è uno dei modi migliori per raggiungere l'obiettivo del progetto. Il seguente esempio ti mostrerà il vantaggio della selezione dello strumento di test
Nel progetto Guru99 Bank, per risparmiare lo sforzo dei test, il team di progetto ha deciso di utilizzare uno strumento di test automatizzato per l'esecuzione dei test. Dopo molti incontri, il tuo team ha selezionato uno strumento adatto al progetto.
Un mese dopo, hai ricevuto il rapporto dal team di progetto su questo strumento
I risultati sono ottimi. Il nuovo strumento automatizzato ha raddoppiato la produttività dei test. Ciò significa che abbiamo risparmiato 50% costo di esecuzione del test. Se sei interessato a esplorare più opzioni per i tuoi progetti, consulta questo elenco di strumenti di test automatizzati.
Questo è un esempio del vantaggio derivante dall'utilizzo dello strumento di test nel progetto. Selezionare lo strumento di test giusto ti aiuta a migliorare la produttività del progetto e a risparmiare sui costi del progetto.
Tipo di strumenti di test
Esistono molti tipi di strumenti di test che il Test Manager può prendere in considerazione quando seleziona gli strumenti di test.
Strumenti open source
Gli strumenti open source sono il programma in cui si trova il codice sorgente apertamente pubblicato per uso e/o modifica rispetto al suo design originale, gratuito.
Sono disponibili strumenti open source per quasi tutte le fasi del processo di test, da Test Case gestione a Difetto tracciamento. Rispetto agli strumenti commerciali, gli strumenti open source possono avere meno funzionalità.
Strumenti commerciali
Gli strumenti commerciali sono software prodotti per la vendita o per scopi commerciali.
Gli strumenti commerciali hanno più supporto e più funzionalità da parte di un fornitore rispetto agli strumenti open source.
Strumenti personalizzati
In alcuni progetti di test, l'ambiente di test e il processo di test presentano caratteristiche speciali. Nessuno strumento open source o commerciale può soddisfare questo requisito. Pertanto, il Test Manager deve considerare lo sviluppo dello strumento personalizzato.
Esempio: desideri trovare uno strumento di test per il progetto Guru99 Bank. Desideri che questo strumento soddisfi alcuni requisiti specifici del progetto.
Analisi di fattibilità dell'automazione
Tornando all'esempio precedente, il team di progetto ha deciso di sviluppare uno strumento personalizzato in grado di soddisfare i requisiti del progetto. Supponiamo che siano stati assegnati 100 casi di test da automatizzare e che abbiano stimato 5 giorni per sviluppare uno strumento in grado di automatizzare contro tutti i di quei casi di prova.
Ecco il risultato del loro lavoro
Come nello scenario precedente, il problema è che lo strumento di test non può automatizzare tutti i casi di test delle specifiche di test. Significa che non tutto le funzionalità dell'applicazione possono essere a fondo testato utilizzando lo strumento di test.
Se la funzionalità dell'applicazione sotto test cambia frequentemente o lo è anche lui complicato, è difficile creare automazione dei test per contro tutti i le funzionalità dell'applicazione, perché ogni strumento ha le proprie limiti.
Se non vuoi trovarti in una situazione del genere, prima di selezionare lo strumento di test, devi analizzare i casi di test e decidere quali casi di test dovrebbero essere automatizzati e quali no. Questo è il Analisi di fattibilità dell'automazione attività.
L'analisi di fattibilità dell'automazione fornisce un contributo molto significativo ai test. In questa analisi, è necessario verificare se l'applicazione sotto test lo è qualificato per test automatizzati.
Alcuni fattori che devi considerare:
Per saperne di più su questi fattori, puoi utilizzare a Lista di controllo che è incluso in questo articolo
Come selezionare il miglior strumento di test di automazione
Per selezionare lo strumento di test più adatto al progetto, il Responsabile del test deve seguire il processo di selezione degli strumenti riportato di seguito
Passaggio 1) Identificare i requisiti per gli strumenti
Come puoi selezionare uno strumento di test se non sai cosa stai cercando?
Identificare con precisione i requisiti dello strumento di test. Tutti i requisiti devono essere documentata e di rivisto dai team di progetto e dal consiglio di amministrazione.
Considera il seguente esempio:
B) Lo strumento può generare il risultato del test nel formato desiderato
C) Il tester può selezionare quali casi di test eseguire con un dato set di dati di test
D) Lo strumento può eseguire automaticamente il test case
E) Lo strumento può giudicare ed eseguire la convalida dell'output del test e contrassegnare i casi di test come superati o falliti
F) Tutto sopra gli articoli
Passaggio 2) Valutare gli strumenti e i fornitori
Dopo aver individuato i requisiti dello strumento, il Test Manager dovrebbe
- Analizzare gli strumenti commerciali e open source disponibili sul mercato, in base ai requisiti del progetto.
- Creare un lista degli strumenti che meglio soddisfa i tuoi criteri
- Un fattore che dovresti considerare è fornitori. Dovresti considerare la reputazione del fornitore, il supporto post vendita, la frequenza di aggiornamento dello strumento, ecc. mentre prendi la tua decisione.
- Valutare la qualità dello strumento prendendo il utilizzo di prova e lancio di un progetto pilota. Molti fornitori spesso mettono a disposizione per il download versioni di prova del loro software
Passaggio 3) Stima dei costi e dei benefici
Per garantire che lo strumento di test sia vantaggioso per l'azienda, il Test Manager deve farlo equilibrio i seguenti fattori:
A analisi costi benefici dovrebbe essere eseguita prima di acquisire o costruire uno strumento
Esempio: dopo aver dedicato molto tempo alla ricerca degli strumenti di test, il team del progetto ha trovato lo strumento di test perfetto per il sito web del progetto Guru99 Bank. I risultati della valutazione hanno concluso che questo strumento potrebbe
- Double l'attuale produttività dell'esecuzione del test
- Riduce lo sforzo di gestione del 30%
Tuttavia, dopo aver discusso con il fornitore del software, hai scoperto che costo di questo strumento è troppo alto rispetto al APPREZZIAMO e di beneficio che può apportare al lavoro di squadra.
In tal caso, il file equilibrio tra costi e benefici dello strumento può influenzare la decisione finale.
Passaggio 4) Prendi la decisione finale
Per prendere la decisione finale, il Responsabile del Test deve avere:
- Avere un forte consapevolezza dello strumento. Significa che devi capire qual è il forte punti e il debole punti dello strumento
- Equilibrio costi e benefici.
Anche dopo aver trascorso ore a leggere il manuale del software e le informazioni del fornitore, potresti comunque aver bisogno di provare lo strumento nel tuo ambiente di lavoro reale prima di acquistare la licenza.
Dovresti avere un incontro con il team di progetto e i consulenti per ottenere una conoscenza più approfondita dello strumento.
La tua decisione potrebbe avere un impatto negativo sul progetto, sul processo di test e sugli obiettivi aziendali; dovresti dedicare un po' di tempo a pensarci bene.
Cose da considerare durante la scelta di uno strumento di gestione dei test
Con l'ampia gamma di scelte disponibili, è facile confondersi mentre si acquista uno strumento di gestione dei test. Questa è una guida imparziale per aiutarti a ottenere lo strumento migliore secondo I tuoi bisogni.
In questa guida ti fornirò i 5 parametri più importanti ma spesso ignorati durante la selezione dello strumento di gestione dei test. Ma prima di iniziare, lasciami ripetere:
Non confrontare mele e arance
Non ha senso confrontare uno strumento SaaS da $ 30 al mese con uno strumento commerciale completo da $ 6000 quando il tuo budget non lo consente. È importante filtrare il tuo strumento con un elenco basato su BUDGET Primo. Se hai un budget limitato, open-source è una buona opzione. Sebbene gli strumenti commerciali siano costosi, offrono un ottimo supporto e sono facili da usare con molto materiale di formazione fornito.
La prossima cosa che dovresti calcolare è il costo della tua licenza. Per questo devi stimare la durata del completamento del test e quale metodo scegli per il test, questo ti aiuterà a capire quale modello si adatterebbe al tuo budget, ad esempio se desideri pagare come per utente registrato, utente simultaneo o utente persistente. Di solito, i costi persistenti o una tantum sono più elevati a causa delle spese in conto capitale. Per alcuni software è necessaria una licenza runtime. Non tutti i fornitori supportano le licenze runtime, quindi è necessario considerare il costo della licenza runtime anche se si pensa di installarla su macchine diverse.
Una volta distillate le tue scelte in base al budget, ecco 5 parametri molto importanti per confrontare i tuoi strumenti di gestione dei test:
Suggerimento n. 1 Lo strumento di gestione dei test dovrebbe migliorare la produttività
I team di test si trovano ad affrontare sfide impegnative per tenere il passo con i rapidi cambiamenti tecnologici e la necessità di test su più piattaforme (sia browser che dispositivi). Poiché i test manuali occupano la maggior parte del tempo di test, un modo per affrontare questa sfida è intensificare l’automazione. Ma ci sono altre aree in cui migliorare l'efficienza di uno strumento che include, tra le altre cose, un'efficace gestione dei dati/laboratorio di test, la gestione dei rilasci e un reporting approfondito. ChoIt senza il corretto strumento di gestione dei test può aiutare enormemente a migliorare questi parametri.
Esaminiamo cosa è richiesto da uno strumento di gestione dei test dal punto di vista della produttività:
Granularità delle informazioni del test
Lo strumento di gestione dei test dovrebbe includere report informativi dettagliati relativi al processo di test. Ad esempio, in caso di fallimento del caso di test, è sempre utile sapere in quale fase il test è fallito anziché sapere che il caso di test è fallito nel suo complesso. Qualunque modifica minore applicata durante il test, lo strumento di gestione dei test dovrebbe informare i membri del team corrispondenti delle modifiche. Per un facile follow-up e un'azione rapida, dovrebbe anche tenere una traccia di controllo delle modifiche, incluso il versioning completo dei casi di test. Inoltre, lo strumento di gestione dei test dovrebbe salvare i risultati del test come sessione e deve avere la possibilità di confrontare i risultati dell'esecuzione del test. Le altre funzionalità che ci si aspetta da uno strumento di gestione dei test standard sono documentare la strategia di test, pianificare l'esecuzione dei test, creare difetti, collegare storie, ecc. Una funzione di caricamento video e il supporto API sarebbero la ciliegina sulla torta.
Monitoraggio della gestione dei rilasci (DevOps)
Le release software sono complesse con molteplici attività (come il monitoraggio della versione di build, il coordinamento del team e la trasparenza delle release) che avvengono tutte contemporaneamente. Un buon strumento di gestione dei test deve avere una solida capacità di monitoraggio della gestione delle release che tenga traccia dell'elenco del software in fase di test e rilascio, in modo che non entri in conflitto con altri artefatti di test. Inoltre, dovrebbe essere in grado di gestire tutti gli artefatti del progetto in un unico ambiente.
Lo strumento di gestione dei test deve fornire una visione unica dei requisiti per tutte le parti interessate. La collaborazione con le parti interessate garantisce che vengano catturati i giusti requisiti. Lo strumento dovrebbe essere in grado di tracciare i collegamenti tra altre risorse e requisiti di sviluppo.
Per i team distribuiti, dovrebbe fornire un unico repository condiviso per collaborare e condividere requisiti, valutare i difetti collegati e comprendere la loro relazione con i test.
Per garantire qualità e coerenza, il tuo strumento di gestione dei test deve imporre la standardizzazione.
Reportistica
È un caos se il tuo team di testing sa quanti difetti sono aperti nella release ma non sa quanto tempo ci vorrà per risolverli. Per monitorare le attività di testing, i test engineer dipendono molto dai report generati dallo strumento di gestione dei test. Uno strumento di gestione dei test affidabile dovrebbe fornire le seguenti informazioni nei propri report come avanzamento del piano di test, stato di creazione del test case, test case fallito e superato, stato del test per suite, stato del test per area, test case da automatizzare, ecc.
Lo strumento di gestione dei test dovrebbe consentire la piena visibilità dell'attività degli sviluppatori e dei processi del ciclo di vita, dalla gestione dei requisiti al test e alla correzione dei difetti.
Un buon strumento di gestione dei test dovrebbe comprendere i seguenti attributi
- Il grafico e la dashboard dovrebbero fornire informazioni su quanti dei tuoi test automatizzati sono stati eseguiti o in attesa di esecuzione
- Dovrebbe evidenziare gli attributi comuni dei test come il numero di casi di test superati/falliti/saltati, il carico di lavoro dell'utente, ecc.
- Prendere una decisione sulla preparazione di ogni versione
- Visualizza le esecuzioni dei test automatizzati insieme ai risultati dei test manuali
Suggerimento n. 2 Supporto agile
La domanda di agile nel mercato attuale è in aumento e aumenta ogni giorno. È importante che il tuo strumento di gestione dei test supporti la metodologia agile. In Agile, i requisiti sono modificabili e completati in modo incrementale, il tuo strumento di gestione dei test dovrebbe essere in grado di soddisfare tali requisiti. Lo strumento di gestione dei test agile di tua scelta dovrebbe promuovere una profonda partnership tra sviluppatori, tester e altri stakeholder (principio di base di agile).
Lo strumento di gestione dei test Agile dovrebbe supportare
- Creare storie
- stima
- Sprint pianificazione del portafoglio ordini
- Grafici di velocità e altri rapporti, ecc.
- Scrum e Kanban
In un ambiente Agile, il confronto delle esecuzioni di test tramite lo strumento di gestione dei test sarebbe produttivo se si osservano i cambiamenti nei tassi di difetti per ogni iterazione. Anche per Agile, lo strumento di gestione dei test dovrà tenere traccia del rilascio del prodotto per ogni iterazione e backlog
Suggerimento n. 3 Integrazione esterna
L'esecuzione automatizzata dei test case può ridurre notevolmente l'onere degli ingegneri di test. Dovresti selezionare uno strumento di gestione dei test che si integri facilmente con strumenti di automazione. Cerca la possibilità di gestire gli script di test nonché di pianificare e avviare test sia localmente che sull'host remoto. Inoltre, è auspicabile la possibilità di archiviare i risultati dei test di automazione nello strumento di gestione dei test. Il tuo strumento di gestione dei test deve supportare integrazione continua. Il vantaggio principale dello strumento di gestione dei test con CI è che i test vengono avviati automaticamente. Il lancio può essere attivato da qualcosa come il commit del codice sorgente da parte di uno sviluppatore o un caso di test con automazione del test sottostante o un'attività pianificata per un orario specifico. L'Integrazione continua differisce nel tempo, nel dettaglio, nella direzione e nella granularità.
Per qualsiasi team di QA, integrazione di strumento di tracciamento dei bug rende il processo di test molto semplice. Uno strumento di gestione dei test standard che si integra perfettamente con l'app SDLC o altri strumenti di tracciamento dei bug come JIRA, BugZilla e Mantis aggiunge più valore allo strumento. Dovrebbe consentire agli utenti di collegare bug, di eseguire istanze di test case, per la gestione centralizzata del processo di test del software. Dovrebbe inoltre consentire all’intero team di progetto di lavorare insieme su un unico problema contemporaneamente.
L'integrazione del tuo sistema di scrivania di supporto è una caratteristica importante che qualsiasi strumento di gestione dei test dovrebbe fornire. Un software di supporto tecnico o altrimenti noto come sistema di ticket aiuta gli utenti a ottenere una soluzione immediata al loro problema. Aiuta i clienti a ottenere una panoramica di tutti i problemi aperti e chiusi.
API È auspicabile il supporto per integrazioni personalizzate.
Suggerimento n.4 Cellulare
Lo strumento di gestione dei test dovrebbe supportare dispositivi mobili e tablet.
Il supporto mobile è estremamente utile per i team che si trovano presso la sede del cliente, non alla scrivania, o per i manager che lavorano con team in diverse località geografiche.
Lo strumento di gestione del test deve avere un set di funzionalità completo (non ridotto) disponibile sui dispositivi mobili.
Il supporto per più dispositivi e sistemi operativi mobili è importante poiché con l'aumento del numero di dispositivi ci sono più complessità come problemi di posizione, gesti, accelerometri e orientamento. Dopotutto, non compri mai un telefono pensando che sia compatibile con il tuo strumento di gestione dei test!
Suggerimento n. 5 Supporto
Il team di supporto del fornitore dello strumento di gestione dei test dovrebbe impegnarsi ad aiutare i propri clienti in tutti i modi possibili. Molti strumenti di gestione dei test sono più focalizzati sulla creazione di siti Web lucidi e annunci pubblicitari per attirare più clienti. Ma per un'attività continua e ripetuta devono concentrarsi sulla fornitura del miglior supporto dell'help desk.
Il miglior strumento di gestione dei test dovrebbe avere funzionalità come chat dal vivo, telefonata, domande frequenti e guide per l'utente online, informazioni sulla documentazione del prodotto, knowledge base, raccolta di ticket dell'help desk, ecc. per aiutare i propri clienti.
Anche molti strumenti di gestione dei test facilitano videoconferenza dal vivo con esperti di strumenti per risolvere le domande dei clienti. Se la conferenza dal vivo non è fattibile, le demo o i video registrati relativi allo strumento di gestione dei test dovrebbero essere sempre disponibili sul posto e accessibili in qualsiasi momento. Mentre per gli sviluppatori, se lo strumento fornisce supporto API o integrazione personalizzata, è necessario fornire script demo e documentazione dettagliata.
Sebbene tutti i canali di supporto sopra indicati potrebbero non essere disponibili per tutti gli strumenti, dovresti selezionare uno strumento che fornisca il tuo "preferito"canale di supporto.
Un parametro più importante e spesso dimenticato è se lo è il fornitore dello strumento Incentrato sui clienti? Ecco alcune cose da considerare durante la selezione dello strumento di gestione dei test:
- L'interfaccia dello strumento dovrebbe essere facile da usare e includere funzionalità di integrazione del cliente
- Dovrebbe ospitare più lingue e più fusi orari
- Dovrebbe avere una capacità di ricerca avanzata
Spero che questa guida ti aiuti a selezionare lo strumento che meglio si adatta alle tue esigenze di test! Per una gestione più completa del ciclo di vita della tua applicazione, potresti voler esplorarli Strumenti dell'ALM.