Una nota casa italiana di automobili di lusso affida a Spindox le attività di software testing del sistema a supporto dell’esperienza utente per uno dei suoi modelli di punta. Il nuovo progetto del brand è partito due anni fa con l’obiettivo di rendere sempre più coinvolgente e personale il rapporto tra il conducente e la sua vettura. Oltre a sviluppare tutta la parte di gestione dei servizi utente, Spindox si occupa di testare la qualità dell’intero sistema software.
Testing end-to-end vuol dire qualità
Il testing end-to-end è una metodologia di test del software che persegue l’obiettivo di esaminare i flussi delle applicazioni dall’inizio alla fine. Questi test simulano lo scenario reale, ossia nelle condizioni più vicine a quelle in cui lo impiegherà l’utente finale, e convalidano il sistema in tutte le sue componenti. In questo modo si assicurano integrazione e integrità dei dati.
Nell’ambito di questo progetto, in particolare, viene verificato che la vettura inoltri i dati in maniera corretta al server, che la struttura di back-end cataloghi tali dati e che il tutto sia inviato in modalità push all’utente finale (proprietario e/o guidatore dell’auto) attraverso l’app a bordo del veicolo.
Oltre all’attività di collaudo del software, ossia il procedimento che fa parte del ciclo di vita del software utilizzato per individuare le carenze di correttezza, completezza e affidabilità delle componenti software in corso di sviluppo, è fondamentale garantire qualità all’interno dell’intero processo. Per approfondire il significato di qualità del software, ascolta l’intervista di Francesca Pascali, Direttore della Business Unit.
Come sono stati effettuati i test?
La metodologia utilizzata da Spindox per il software testing (ISO/IEC/IEEE 29119) si articola in più fasi.
Si parte dalla fase di pianificazione, che si articola a propria volta in più sottofasi:
- Individuazione dei KPI per la definizione della strategia di test
- Identificazione di use case e di test case partendo dalle specifiche tecniche e funzionali
- Messa in priorità degli stessi
- Definizione degli ambienti di test
C’è quindi una seconda fase di delivery, che comprende la fase di esecuzione dei test, effettuata in maniera automatica o manuale, con relativa registrazione degli esiti, eventuale troubleshooting, l’individuazione di problemi ed eventuale assegnazione ai fornitori e la redazione di reportistica completa di valutazione di avanzamento rispetto alle condizioni iniziali.
Per questo progetto, possiamo raggruppare le attività di testing in cinque momenti:
- Analisi dei requisiti
- Definizione dei casi di test
- Esecuzione dei casi di test
- in modalità manuale: attraverso banchetti di test, ossia simulatori fisici di infotainment dell’auto forniti dal cliente, oppure direttamente su vetture reali attraverso la collaborazione con un pilota dedicato. Poiché i test si sono svolti nel pieno dell’emergenza sanitaria COVID, non è stato possibile collaborare in presenza e quindi è stata utilizzata una piattaforma di monitoraggio da remoto.
- in modalità automatica: in alcuni casi sono stati utilizzati strumenti di test automation che hanno permesso di navigare nell’applicazione e simulare delle casistiche di use case.
- Tracciamento e assegnazione dei bug al fornitore di riferimento.
- Reportistica: interfaccia diretta con il team di testing del cliente per condivisione reportistica e avanzamento attività.
Punti di forza
- Solida esperienza di Spindox in ambito mobile e back end, e dunque conoscenza approfondita dell’architettura di riferimento;
- Interfaccia diretta con il gruppo di test dell’azienda cliente, che ha affidato con fiducia le “chiavi” del sistema alla squadra di Spindox responsabile dei test;
- Interfaccia diretta con il gruppo di sviluppo del fornitore che ha realizzato l’applicazione;
- Individuazione dei problemi in tempo reale grazie agli ambienti di simulazione.