Webinar: Test Driven Development con Instant Developer Foundation

Sono molto contento di comunicarvi che abbiamo il primo evento organizzato da un componente della Community per la Community stessa!

L’evento è riservato proprio ai componenti della Community.

Martedì 28 gennaio alle ore 11:30 Francesco Faleschini (@f.faleschini) dell’azienda Nord Est Systems sarà la nostra guida nel mondo della Test Driven Development utilizzando Instant Developer Foundation come ambiente di sviluppo.

Per partecipare al Webinar (la cui durata sarà di circa 60 minuti) non occorre registrarsi.

Dovrete solo accedere a Zoom qualche minuto prima dell’inizio del Webinar ed inserire il seguente ID riunione 81826736835 o in alternativa cliccare sul link seguente
TDD con Instant Developer Foundation.

Vi aspettiamo!

Potete commentare e dirci se ci sarete.

Al link seguente trovate il video del webinar:

Test Driven Development Webinar

Il componente ID Unit lo trovate nel Team Works di Community.
L’accesso al Team Works va richieso a @paolo.giannelli.

Qui di seguito lo zip con il componente per chi non ha una licenza Team Works di Instant Developer Foundation.

ID Unit DEV.zip (628,6 KB) aggiornato al 11-feb-2025 alle 16:26.
ID Unit 24_5.zip (628,5 KB) aggiornato al 14-feb-2025 alle 14:58.

7 Mi Piace

Salvo imprevisti, ci sarò molto volentieri, grazie :slight_smile:

1 Mi Piace

Anche io ci sarò, grazie. :slightly_smiling_face:

1 Mi Piace

Per chi non potesse partecipare, sarà registrato?

1 Mi Piace

@tommaso.simoncini si lo registriamo e poi lo metteremo sicuramente qui scaricabile.

1 Mi Piace

Sono onorato ed entusiasta di presentare questo webinar!
Ho preparato il contenuto con l’obiettivo di trasmettere la maggior quantità possibile di informazioni utili, mantenendo il tutto (spero) pratico e stimolante.

Sarà interessante confrontarsi con voi e vedere se qualcuno vorrà imbarcarsi con noi nel viaggio (senza ritorno!) del Test Driven Development.

Ci vediamo martedì alle 11:30!

Un saluto a tutti.
Francesco

6 Mi Piace

Ringrazio ancora @f.faleschini di Nord Est Systems per l’impegno che sta mettendo nel preparare il webinar per noi!

Ci si vede domani alle 11:30!
Vi aspettiamo

1 Mi Piace

io ci sono, non sapevo che TDD si potesse usare con Inde Foundation, sono molto curioso di vedere come e molto interessato.

1 Mi Piace

Molto interessante ma richiede un impegno e investimento iniziale non indifferente.
Se si potessero generare i test automaticamente sarebbe un’altra musica.
Forse Progamma potrebbe farlo?

@poidomani47 creare test automatici su metodi specifici di un software la vedo un po’ improbabile.
Al limite si potrebbe provare a creare un Wizard JavaScript che crei le videate di test a partire dalle Classi con i vari metodi vuoti che poi il programmatore implementa.

1 Mi Piace

Mi spiace di essermi perso il webinar ma ho avuto un po’ di trambusto al lavoro e quindi non sono riuscito a mettermi in ascolto.
Spero verrà pubblicata la registrazione perché sono veramente interessato all’argomento.

1 Mi Piace

@d.termini la registrazione del webinar la mettiamo sicuramente in questo post scaricabile per tutti voi.

3 Mi Piace

A me piace e vorrei usarlo nei miei progetti. Il componente è disponibile per il download?

L’idea di un wizard javascript che genera i test in automatico non è male e mi piacerebbe partecipare alla sua realizzazione. Grazie

Molto interessante ma richiede un impegno e investimento iniziale non indifferente.

Questo è interessante. Credo sia una considerazione comune ma mi chiedo: quanto costa, nella globalità, doversi reinventare i test ogni volta che si mette mano a qualcosa? e ancora di più, quanto costa nella globalità del tempo impiegato, pubblicare qualcosa di non è propriamente testato?
Quello che intendo è che propendo a pensare che, anche se a prima vista il tempo di sviluppo aumenta considerevolmente, in realtà forse sommando tutto se ne risparmia.
Sarebbe bello avere qualche statistica da chi l’ha usato.

3 Mi Piace

Non so se esistono statistiche che possono paragonare tempi di sviluppo con uso o meno dell’approccio TDD e forse non è nemmeno possibile farle in modo oggettivo.

Vorrei sottolineare un aspetto: TDD è un approccio allo sviluppo che come risultato finale genera, oltre al codice sorgente, una suite di test ma non va confuso con la creazione di una suite di test per codice esistente (per esistente si intende anche scrivo il codice e subito dopo scrivo i test).

Per farla breve, nel TDD prima scrivo il test in modo che fallisca e poi scrivo il codice (minino e indispensabile) che fa passare il test e si ripete il ciclo facendo evolvere la soluzione verso la sua forma definitiva.
In genere si lavora in due (nasce in ambito XP dove il pair è norma), uno scrive il test e l’altro scrive il codice. Mentre uno scrive il codice l’altro pensa al test successivo e ogni tanto ci si scambia.
Non è banale all’inizio ma se provate a farlo vi accorgerete che aumenta sia qualità del codice che produttività (in termini di tempo impiegato per la fase di sviluppo e test, che di fatto è già finita al termine dello sviluppo).
Il TDD si può fare anche da soli? Si (se come me hai una personalità multipla) ma se puoi farlo in pair meglio.
C’è chi sostiene che vale la pena usarlo su cose nuove e di una certa complessità e chi dice che lo usa per tutto ormai.

A parte il discorso TDD, avere una buona copertura di test di unità facilita non poco, ma è soggettivo, due aspetti fondamentali della manutenzione:

  • documentazione del “contratto” della funzione/metodo (il test è un esempio completo di come chiamere un metodo e dei relativi output attesi)
  • non regressione in caso di modifiche per refactoring, change request o bug fix (modifico il metodo e i test mi avvisano se sto rompendo qualcosa indirettamente)

Come ha detto anche Francesco, una volta che ti abitui non ne puoi fare a meno.

3 Mi Piace

Appena riesco a visionare la registrazione del webinar la carico qui.
Lo farò dopo il 10 febbraio in quanto la settimana prossima sono in ferie!

Al webinar eravamo in 54!
Quindi direi un buon numero.

2 Mi Piace

Il componente IDUnit descritto nel webinar lo si può trovare nel Team Works di Community; per avere l’accesso dovete chiedere a me mandandomi un messaggio primato così non aggiungiamo rumore a questo post.

Per chi non ha una licenza Team Works di Foundation e quindi non può collegarsi ad un server Team Works ve lo scarico io e lo allego a questo messaggio.

@f.faleschini hai aggiornato la master copy di IDUnit sul Team Wors?

3 Mi Piace

ciao @paolo.giannelli
ho appena caricato la mastercopy:

per favore elimina il progetto che avevo caricato anni fa, evidentemente aveva un altro GUID, in ogni caso era molto vecchio e diverso da questo.

Quello che ho appena caricato è il mio DEV, poi nel webinar avevo usato la 2024.2 che è un branch del dev, a parte piccole limature sono praticamente uguali.

In ogni caso io sconsiglio di usare il DEV, andrebbe sempre fatto un branch, non so come lo vogliamo gestire qui in community, per adesso io ID Unit lo sto sviluppando anche in locale (per quanto non ci lavori molto spesso), idealmente sarebbe da sviluppare solo su community, facendo almeno un branch per ogni major release di IDF.
Che ne dici?
Ciao!

3 Mi Piace

Abbiamo finalmente online il video del fantastico webinar di @f.faleschini .
Lo trovate nel primo messaggio di questa discussione.

5 Mi Piace

Che dire… mitici Francesco e Paolo!
Grazie veramente della condivisione degli spunti, idee e progetto.

2 Mi Piace