Tesi, Prove Finali e Tirocini



In questa pagina è presentato un elenco non esaustivo di possibili proposte di tesi, prove finali e tirocini.


Tesi / Prove Finali / Tirocini in Collaborazione con ERICSSON Genova (Rif. Filippo Ricca)

Sono disponibili Tesi, Prove Finali e Tirocini da svolgersi in collaborazione con ERICSSON Genova su vari argomenti, per maggiori informazioni leggi QUI (pagine 1-5 per introduzione e pagine 6-11 dettagli proposte di Tesi / Prove Finali / Tirocini).

Slide seminario ERICSSON @ Dibris disponibili qui: QUI

Se sei interessato/a a questa proposta scrivi a filippo.ricca@unige.it per ulteriori informazioni.

Survey industriale su tool e competenze per Web/Smartphone testing (Rif. Filippo Ricca)

Indagine sui social network per identificare i tool e le competenze per Web/Smartphone testing utilizzati nell'industria

Il test di web e smartphone apps è notoriamente un'operazione che può richiedere molto tempo, sia per la ricchezza e la complessità intrinseca di questa categoria di prodotti che per la varietà di ambienti attraverso i quali gli utenti finali possono fruirne. Esistono diversi tool disponibili per automatizzare i casi di test, per esempio: Selenium IDE, Selenium WebDriver, Sikuli.

Il goal di questa prova finale è analizzare portali e web applications che offrono posti di lavoro (per esempio http://careers.stackoverflow.com/) per trovare quali tool sono realmente utilizzati nell'industria e quali competenze sono necessarie per lavorare nell'ambito del Web/SmartPhone testing. Questo lavoro può essere approcciato in modi diversi: manualmente o con strumenti automatici esistenti (es. Crawlers).

Studio, Sviluppo e Migrazione di Web Locators (Rif. Filippo Ricca)

In molti framework e tool per realizzare casi di test automatici per web applications (es. Selenium IDE, WebDriver e Sikuli) viene utilizzato il concetto di Web locator (ad esempio un’espressione XPath o un'imagine) per identificare in modo univoco gli elementi delle pagine Web con cui interagire (ad esempio un link o un’area di testo). Un problema ben noto in ambito industriale è quello dei locator fragili, ovvero locator che non sono più in grado di identificare l’elemento Web target quando l’applicazione viene modificata.

In questo ambito, il nostro gruppo di ricerca sta:

  1. conducendo degli studi empirici per analizzare e confrontare la robustezza delle varie tipologie di locator basati ad esempio su ID, XPath, CCS e tecniche di image recognition. Vedi ad esempio questo nostro articolo.
  2. sviluppando un algoritmo che sia in grado di aiutare il tester a produrre locator robusti da utilizzare durante lo sviluppo di una testsuite in modo da minimizzare i successivi costi di maintenance.
  3. analizzando possibili tecniche di migrazione automatica di test suite DOM-based (II generazione, utilizzano le informazioni presenti nel codice HTML per localizzare gli elementi con cui interagire) a test suite Visuali (III generazione, utilizzano algoritmi di image recognition).

Su questi argomenti proponiamo varie tesi/prove finali caratterizzate da un approccio sia di tipo più implementativo (ad esempio implementare l'algoritmo di cui al punto 2 in un plugin Firefox) che di tipo sperimentale (ad esempio confrontare i costi di sviluppo, manutenzione e tempi di esecuzione di test suite equivalenti ma create con tool differenti, vedi punto 1).

Alla fine della tesi / prova finale lo studente avrà acquisito competenze su tecnologie / tool che vengono utilizzati correntemente nell'industria (vedi ad esempio alcuni lavori di ricerca su queste tematiche che abbiamo svolto in collaborazione con industrie locali: primo e secondo articolo).

Link: Test automation, Selenium, Sikuli

Se sei interessato/a a questa proposta scrivi a filippo.ricca@unige.it per ulteriori informazioni.

Test Automation for Web and Smartphone Applications (Rif. Filippo Ricca)

Il test di web e smartphone apps è notoriamente un'operazione che può richiedere molto tempo, sia per la ricchezza e la complessità intrinseca di questa categoria di prodotti che per la varietà di ambienti attraverso i quali gli utenti finali possono fruirne. D'altro canto, la necessità di ridurre i tempi di distribuzione di nuove versioni e la progressiva adozione di metodologie Agile nello sviluppo del software comportano margini sempre più ridotti per garantire l'effettiva qualità del prodotto finale. In questo contesto la creazione di test automatizzati diventa un requisito essenziale per incrementare efficienza e qualità in un quadro complessivo di contenimento dei costi. Esistono diversi tool disponibili per automatizzare i casi di test, per esempio: Selenium IDE, Selenium WebDriver, Sikuli.

Gli obiettivi di questa prova finale e/o tesi sono:

  • Selezione di uno o più tool free o commerciali per la creazione di test automatizzati per applicazioni web o smartphone.
  • Implementazione di un insieme di test automatizzati per un applicazione di dimensioni significative con il tool scelto al punto precedente.
  • Raccolta di alcuni dati (es. tempo di sviluppo, difficoltà, correttezza).
  • Confronto tra i tool ed analisi.

Alla fine della prova finale (o tesi) lo studente avrà aquisito competenze nello sviluppo di applicazioni Web e/o smartphone con stumenti utilizzati nell'industria. Inoltre avrà acquisito competenze nell'ambito del software engineering empirico.

Link: Test automation, Selenium

Se sei interessato/a a questa proposta scrivi a filippo.ricca@unige.it per ulteriori informazioni.

Generazione di Casi di Test Automatici di Accettazione per Applicazioni Web a partire da Modelli Specifici dell’User Interaction (Rif. Filippo Ricca)


L’idea è quella di proporre un metodo e un tool per generare casi di test per applicazioni Web a partire da modelli espressi tramite UML, Use Case e User Interface (UI) mockup. Dopo avere progettato i mockup dell’applicazione Web (attualmente stiamo lavorando ad un metodo per svolgere questo task) da realizzare, questi andranno prodotti con un tool grafico specifico per mockup (es. Pencil). Successivamente questi mockup saranno utilizzati per generare casi di test con tool di tipo capture-replay che utilizzano tecniche di image recognition per localizzare gli elementi delle pagine Web (es. Sikuli o JAutomate). Una volta generati, i casi di test saranno utilizzati durante lo sviluppo come test funzionali di accettazione in perfetto stile "Agile" (eXtreme Programming).

Alla fine della tesi / prova finale lo studente avrà acquisito competenze su tecnologie / tool che vengono utilizzati correntemente nell'industria.

Link: Test automation, Pencil, Sikuli

Se sei interessato/a a questa proposta scrivi a filippo.ricca@unige.it per ulteriori informazioni.