polito.it
Politecnico di Torino (logo)

Connected wallbox: una soluzione di test automation completa, dal design all'implementazione = Connected wallbox: a complete test automation solution, from design to implementation

Alessio Magurno

Connected wallbox: una soluzione di test automation completa, dal design all'implementazione = Connected wallbox: a complete test automation solution, from design to implementation.

Rel. Riccardo Coppola. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2023

[img]
Preview
PDF (Tesi_di_laurea) - Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives.

Download (6MB) | Preview
Abstract:

Connected wallbox: una soluzione di test automation completa, dal design all'implementazione Il test end-to-end è una metodologia di test del software per testare un flusso di applicazioni dall'inizio alla fine. I test end-to-end (E2E) sono spesso trascurati, principalmente a causa dell'impegno richiesto per implementarli. L'automazione risolve molti di questi problemi garantendo una copertura di test consistente e simile alla produzione del sistema. Questa tesi di laurea presenta un'esperienza condotta presso una società di consulenza italiana durante uno stage. Lo scopo dello stage era lo sviluppo di una soluzione di automazione dei test per un'azienda che si occupa di transizione alla mobilità elettrica. In particolare, il sistema in fase di test consiste in una wallbox connessa che consente agli utenti di ricaricare un'auto elettrica a casa e offre la possibilità di monitorare le sessioni di ricarica e il consumo di energia. Il lavoro di tesi si è concluso con un'attività di ricerca sulle nuove tendenze del test automation. In particolare, lo scopo era l'uso di intelligenza artificiale nell'automazione dei test e approfondimenti sulle tecniche di testing visuale. Lo sviluppo è iniziato dalla progettazione dei casi di test che coprono tutte le funzionalità da testare.Nella fase di progettazione, si è dovuta trovare una soluzione per automatizzare le operazioni della wallbox connessa a un simulatore utilizzato per simulare la ricarica. Dopo questa fase, è iniziato lo sviluppo effettivo degli script di test. Il framework di test si basa sull'uso di Selenium per il test web e Appium per il test dell'app mobile con Java. In questa tesi, oltre a descrivere il lavoro sviluppato, ho descritto il processo software della soluzione di automazione dei test sviluppata, ma che in generale può essere utilizzata per descrivere qualsiasi soluzione di automazione dei test simile. L'attivita di ricerca si è divisa in due parti: nella prima parte lo scopo era di verificare se fosse possibile aggiungere l'uso di intelligenza artificiale e machine learning nei test da sviluppare; è stata analizzata un'opzione facilmente integrabile con il framework aziendale, e questa analisi ha portato buoni risultati in termini di miglioramento dei risultati dei test. Infatti, con questa soluzione, gli script di test sviluppati possono essere molto meno influenzati dai rapidi cambiamenti nel software in fase di test. Nella seconda parte, l'attenzione si è concentrata sulla ricerca e sullo sviluppo di una soluzione di test visuale. Il test visuale valuta l'output visibile di un'applicazione e lo confronta con i risultati attesi dal design. In questa fase sono state analizzate due soluzioni, la prima delle quali basata su un plugin Appium che consente di effettuare il matching tra due immagini, che non si è rilevata particolarmente coerente; la seconda, invece, è basata sulla libreria OpenCV in Python e consente di effettuare il matching tra template, ma con risultati migliori rispetto alla soluzione precedente. A valle di questo lavoro di tesi si può considerare come la test automation sia destinata a cambiare in breve il mondo del software testing. Allo stesso tempo si può notare come sia una tecnica di testi che necessita ancora di un forte sviluppo per seguire i rapidi miglioramenti e sviluppi del software odierno. Partendo da questo lavoro, si potrebbe avere il focus sul migliorare e capire come stabilizzare le tecniche di test che usano l’artificial intelligence e il machine learning.

Relatori: Riccardo Coppola
Anno accademico: 2022/23
Tipo di pubblicazione: Elettronica
Numero di pagine: 95
Soggetti:
Corso di laurea: Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering)
Classe di laurea: Nuovo ordinamento > Laurea magistrale > LM-32 - INGEGNERIA INFORMATICA
Aziende collaboratrici: SANTER Reply S.p.a.
URI: http://webthesis.biblio.polito.it/id/eprint/26855
Modifica (riservato agli operatori) Modifica (riservato agli operatori)