Joomlashow arrow News / Blog arrow La necessità di Unit Test per Joomla

La necessità di Unit Test per Joomla

31-03-2009 21:57

Recentemente mi sono inbattuto in una breve discussione con Amy Stephen (membro molto attivo della comunità di Joomla) su twitter riguardo gli Unit Test per Joomla.

In seguito ad un tweet di Andrew Eddie (co-fondatore del progetto Joomla) in cui Andrew afferma che riceve alcuni errori quando prova ad installare Joomla 1.5.10, gli ho inviato una risposta dicendo che"Joomla ha veramente bisogno di Unit Test".

Jooma Unit Test

Vi starete chiedendo, cosa sono gli Unit Test?

Semplificando il concetto, gli Unit Test sono dei piccoli programmi che testano il funzionamento di ogni singola parte di un software (solitamente un software è diviso in diverse parti e ogni parte ha a disposizione degli Unit Test).

Supponiamo ad esempio che scriva una funzione che effettui una semplice moltiplicazione: in questo caso potrei scrivere un test che utilizza la mia funzione moltiplicando 9 per 3 e che nel caso in cui riceva un risultato diverso da 27 dichiari il test fallito, in caso contrario il test verrebbe dichiarato completato correttamente.

Questo mi darebbe il vantaggio di poter far girare questo test ogni volta che effettuo delle modifiche alla mia funzione in modo da prevenire l'introduzione di errori con le modifiche.

Questo è proprio quello di cui ha bisogno Joomla, degli unit test accurati che verifichino il funzionamento di tutto il CMS automaticamente.
Questo eviterebbe che gli utenti debbano ogni volta affrontare problemi di files di installazioni mancanti o bug causati da errori introdotti con i nuovi cambiamenti.

Amy Stephen mi ha invitato pubblicamente a contribuire allo sviluppo degli Unit Test su Joomla. Le ho risposto dicendo che in questo momento non ho molto tempo a disposizione, ma che avrei potuto ugualmente provare ad affrontare la questione.
Le risposte che ho ricevuto sono state molto difensive (prima, seconda):

"Bene se sei troppo impegnato per aiutare non c'è problema. Ma allora non puoi lamentarti che noi non sviluppiamo quello che vuoi".

"I volontari devono portare tutti i miglioramenti necessari. E' così che funziona"

Purtroppo da queste risposte mi sembra di intuire che Amy Stephen non abbia le idee molto chiare su cosa sono gli Unit Test e quanto sono importanti per un software in continua evoluzione (quindi esposto continuamente al rischio di introduzione di nuovi errori con i continui cambiamenti). Questo è un compito che dovrebbe essere svolto durante la fase di sviluppo da chi ha una visione chiara e ampia del codice e che quindi può scrivere dei test dettagliati ed efficaci.

D'altra parte non posso affermare che io sia un guru in questo campo, anzi, ho iniziato a documentarmi riguardo agli Unit Test abbastanza recentemente con lo studio di Symfony, Python e Django. La differenza è che in questi altri ambienti gli Unit Test sono descritti come molto importanti se non vitali per sistemi in continua crescita.

Per concludere il post, in seguito alle risposte di Amy, non ho voluto proseguire la discussione su quel tono e mi sono detto interessato alla questione degli Unit Test per Joomla (nonostante il poco tempo che ho a disposizione) e mi sono unito al gruppo Joomla! Unit Test su Google Groups.

Se qualcuno fosse particolarmente preparato sull'argomento Unit Test con php, è invitato a unirsi al gruppo e aprire una discussione.

Commenti utenti  

Visualizza 1 di 1 commenti

Effettivamente...

Credo che effettivamente una unità di test per Joomla sia l'ideale, il problema è che si dovrebbe farla lavorare offline per la comparativa sui file prima dell'installazione, in alternativa si potrebbe generare un plugin o un'estensione che faccia in modo di controllare tutti i file a seconda della versione per poi riportare se il test fallisce o meno... Un altro problema è quello se fatto a livello di codice è quello di aggiungere delle linee di codice se possiamo dire di test in ogni funzione, ed è qui che viene il difficile, non si può aggiungere nulla se con hackerando direttamente il core di joomla, neanche con gli override... a meno che non si aggiungano le funzioni di test alla classe, ma noi vogliamo che i test vengano fatti dentro la funzione in una classe. 
Non è una cosa semplice, comunque.

Scritto da: Giacomo (Guest) 19-03-2010 13:56

Aggiungi il tuo commento

Nome
E-mail
Titolo  
Commento
 

Caratteri rimasti: 1000

   
   
   
‹ Precedente   Successivo ›

Ultimi siti Joomla

1. Stress lavoro correlato
    Categoria: Aziende

2. Blu Riviera
    Categoria: Turismo

3. CPL Fabbrika
    Categoria: Forniture per ufficio

4. Cpl Web
    Categoria: Aziende

5. Associazione Scacchi...
    Categoria: Sport

6.

Random link

www.lndlab.com
Categoria: Grafica

Categorie

Ricerca

Pubblicità

Login

Hai dimenticato la password?

Registrati