Keynote a cura Nokia – Agile Venture Vimercate – #AVV2020
Massimo Canali e Rosario Gagliolo, entrambi parte del Nokia Customer Operations Team, hanno curato il keynote della conferenza Agile Venture Vimercate 2020 raccontandoci la loro soluzione nel mondo dell’automazione del test per applicazioni che operano nel mondo del 4G.
Una storia di successo, frutto di anni di lavoro che oggi fa da collante tra il cliente e il team di R&D. Un ambiente di test automatico organizzato che permette un flusso continuativo di feedback per entrambe le parti. Due grandi vantaggi:
- in caso di bug, avere reporting veloce e informazione dettagliata;
- aumentare e ottimizzare copertura dei test che non sono più pensati per lo scenario specifico di ogni cliente, ma un po’ più generici. Questo permette di avere una griglia di test da eseguire sempre prima di ogni rilascio.
Quali elementi compongono l’ambiente di test?
Vengono Robot Framework (1), un framework open source per test automation, e Selenium (2) per scrivere le suite di test.
Siccome si testano applicazioni del mondo delle reti cellulari, si fa uso di tool specifici quali Wireshark (3) ed Emil.
Da un punto di vista architetturale, una main machine contiene le suite di test automatici contenenti anche quali risorse debbano essere testate, E’ quindi il test che seleziona gli apparati da testare.
Il cuore è rappresentato dalla virtual machine Pegasus: attraverso l’uso di orchestrator, esegue i test che vengono pre-testati in altri ambienti. Si eseguono test end-to-end e vengono forniti report e quant’altro per permettere di avere più informazioni possibili su ogni test (gli step eseguiti, eventuali errori ecc.).
Come si svolge un test automatico?
La giornata di test può essere suddivisa in tre fasi:
- Preparazione e attività manuale: recupero delle risorse interessate, settaggio di tutto l’ambiente, esecuzione di pre-testing (pensate alla preparazione della filiera per una macchina). Si effettua una pre-verifica prendendo un test casuale per vedere se è tutto in ordine, dopodiché si fa partire la routine su Pegasus. Vengono eseguiti anche test manuali.
- Fase notturna: Pegasus lavora, eseguendo routine di test.
- Fine esecuzione routine: generazione di log e pagina html consultabili dal cliente. Alla fine del test le risorse vengono rilasciate per prossime routine o altri test manuali.
Vengono simulati scenari complessi, pensate al traffico di dati in uno stadio durante un concerto…per questo Nokia ha concepito la Real time traffic generator. Grazie a questa macchina, eseguono test di stabilità specifici come appunto il Concert stadium stability test che consiste in una simulazione di stress con traffico dati/video durante un concerto.
Dati e conclusioni
Pegasus nel 2019 ha eseguito circa 25.000 test, numero che è destinato a crescere. Attualmente i test del mondo delle telecomunicazioni è fermo al 4G ma nel 2020 si punta a migliorare il tutto, testando il 5G. Questo perché le esigenze del cliente e quelle di un team di R&D viaggiano su binari paralleli: esigenze da soddisfare e bisogno di essere aggiornati e farsi trovare pronti.
Perché test automation?
Pensiamo ai test classici. Li implementiamo e poi li eseguiamo. Una, dieci, cento volte…non falliscono e quindi li battezziamo per fatti e finiti. Non basta, se fallisse alla 500-esima iterazione? Questo si può fare automatizzandoli, settando magari cicli di migliaia di ripetizioni. Sicuramente aumenta l’affidabilità oltre che risparmiare tempo.
Marco ci dice che ad oggi, nell’arco temporale di un week-end, riescono ad effettuare stress test per una certa area geografica portando, tra le altre, una maggiore soddisfazione del cliente oltre che dati utili.