All'inizio di maggio 2014 abbiamo avuto l'opportunità di ospitare Gerard Meszaros per alcuni giorni a Timisoara. È noto soprattutto per il suo eccezionale libro Modelli di test xUnit: Rifattorizzazione del codice di test. È stato gentile ad aiutarci con alcuni lavori nel nostro ufficio e a presentare un discorso eccezionale al locale Agile Software Meetup.
Uno degli argomenti più interessanti di cui ho parlato con Gerard alla #CraftConf è stato il testing end-to-end delle applicazioni presentate sul web. Noi di Syneto abbiamo avuto esperienze piuttosto deludenti con i test Selenium in passato. Non volevamo vivere la stessa esperienza, ma sapevamo anche di dover trovare delle soluzioni per identificare ed eliminare quei piccoli e fastidiosi bug che si insinuavano nelle release.
In realtà stavo esaminando i framework di test end-to-end prima di andare alla #CraftConf e Gerard Meszaros mi ha consigliato Struttura del robot quando ne abbiamo parlato. Era uno di quei framework che avevo visto ma che avevo saltato a causa della confusione della documentazione e dell'installazione. Ora che Gerard era qui, a Syneto, a lavorare con noi per due giorni interi, abbiamo colto l'opportunità di installare e sperimentare questo framework. Ci ha aiutato moltissimo a superare l'ostacolo della curva di apprendimento.
Immagine tratta dalla presentazione di Gerard Meszaros.
E il risultato? Due settimane dopo siamo orgogliosi di presentare un'infrastruttura di test end-to-end funzionante, integrata con Team City, in esecuzione su un sistema StorageOS virtualizzato che si aggiorna dopo ogni commit di uno dei nostri progetti. La nostra suite di test non è ancora così ampia, ma abbiamo superato il limite e ora possiamo facilmente implementare test end-to-end utili e affidabili.
E non è tutto. Abbiamo iniziato a costruire i nostri test dell'interfaccia utente utilizzando la stessa infrastruttura. Sono molto simili ai test end-to-end, anch'essi eseguiti sul Robot Framework, ma abbiamo eliminato tutta la logica aziendale, in modo che solo l'interfaccia web venga esercitata e i test vengano eseguiti molto velocemente.
Ma non siamo stati gli unici a godere degli insegnamenti di Gerard. È stato così gentile da rispondere al nostro invito e parlare all'Agile Software Meetup di Timisoara.
Si è rivelato il più grande Agile Software Meetup di Timisoara finora. Un discorso davvero stimolante e informativo con più di 40 partecipanti. Grazie a tutti per aver supportato questo evento e per il vostro grande feedback.
E non è stato tutto lavoro. Abbiamo avuto la fortuna di avere un tempo splendido, così abbiamo visitato diversi luoghi di Timisoara, abbiamo provato la cucina rumena e ci siamo goduti le chiacchiere e i discorsi tecnici con Gerard.
Grazie Gerard Meszaros per essere venuto. È stato un piacere averla con noi per qualche giorno e spero che venga a trovarci di nuovo in futuro.
Il libro "xUnit Test Patterns" ha portato il più grande miglioramento alle nostre pratiche di sviluppo. Avere Gerard Meszaros in persona che fa pair programming e condivide le sue intuizioni con noi a Timisoara è stato un vero privilegio! Grazie Gerard!
Sapevo che avremmo condiviso idee, conoscenze, cultura e così via. Ma quanti di noi possono dire "ho condiviso una fetta di torta al formaggio con Gerard Meszaros"? Beh, io sì!