Domanda

Qual è il modo migliore per eseguire la suite di unit test dopo ogni commit?

Sono particolarmente interessato al caso in cui esegui tutte le funzionalità/modifiche nei rami e mantieni stabile il tronco.

Il mio controllo del codice sorgente è SVN e utilizzo tortoise SVN come client.

Esiste un evento SVN o qualcosa del genere che posso chiamare file .cmd/.bat?

Se la risposta è cruise control, come controlli tutti i rami con cruise control?

È stato utile?

Soluzione

Penserei che probabilmente dovresti eseguire i tuoi test unitari Prima il commettere.Se hai intenzione di testare ad ogni commit, dovresti farlo abbastanza presto per rifiutare modifiche sostanziali.

Puoi farlo con ganci di sovversione.Se aggiungi a pre-commit hook, puoi eseguire un build/test prima che avvenga il commit.Lo script hook verrà eseguito sul server.

Altri suggerimenti

Hai bisogno di un server di integrazione continua come CruiseControl.Ciò monitorerà SVN per le modifiche, Fire si basa su un commit, lo seguirà con una corsa di test e segnala eventuali errori direttamente nel vassoio di sistema (o e-mail o qualsiasi notifica con cui ti senti a tuo agio) devi configurare il tuo crocisecontrol scrivendo Un piccolo script (per lo più XML) che definisce le esigenze del tuo progetto.Consigliato..non tornerai indietro dopo averlo assaggiato.Eccone uno che ho impostato in passato

Aggiornamento:Non penso che esista un controllo globale di tutti i tipi di impostazione dei rami.Ogni ramo dovrebbe essere un URL del trunk diverso...il che significa un progetto diverso per CruiseControl.Se segui il metodo consigliato per la ramificazione di sovversione (Vedere qui), Poiché lo stesso CruiseControl sembra utilizzare i rami in Subversion..questa sembra essere la strada da percorrere.

Vorrei impostare anche un processo di creazione/distribuzione automatizzato.Dai un'occhiata al Cruise Control: può eseguire i test dell'unità prima della distribuzione.

http://cruisecontrol.sourceforge.net/

Utilizzo Buildbot.

Questo ha un'utilità chiamata svn_buildbot.py che può essere chiamata dallo script post-commit di subversion.

Buildbot è sovvertito (così come una serie di altri sistemi VC), quindi può essere configurato per estrarre nuove revisioni dai rami in cui ti sei impegnato.Fornisce inoltre notifiche e-mail e un'interfaccia web per il controllo dello stato e la forzatura delle build in una particolare revisione/ramo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top