Domanda

Sto usando IntelliJ-Idea per scrivere demoni Java. Usiamo JUnit per testare l'unità del nostro codice e vogliamo avere esecuzioni automatiche al check-in per sovversione.

Sono disponibili strumenti che possono eseguire automaticamente test unitari e quindi inviare rapporti via e-mail e a Hobbit ?

È stato utile?

Soluzione

Penso che dovresti esaminare l'integrazione continua, come altri hanno suggerito. Ho provato personalmente CruiseControl e Hudson e preferisco Hudson. Puoi semplicemente scaricarlo ed eseguirlo per vedere se ti piace, la configurazione è un gioco da ragazzi, solo:

  1. Scarica hudson.war da http://hudson.dev.java.net .
  2. Eseguilo in modalità standalone (java -jar hudson.war).
  3. Punta il tuo browser su http: // localhost: 8080 per configurare e utilizzare.

Ha il supporto integrato per Maven e Ant se li usi, ma in caso contrario, puoi semplicemente scrivere il tuo file batch / script di shell.

Se l'integrazione continua non è un'opzione, è possibile esaminare l'uso di un hook post-commit di Subversion ( http://svnbook.red-bean.com/en/1.0/svn-book.html#svn-ch-5-sect-2.1 ). Non ho esperienza con l'uso dei ganci per lo scopo che hai descritto, quindi non posso davvero offrire molto aiuto qui.

Altri suggerimenti

Utilizziamo Hudson come nostro server di integrazione continua. È possibile impostare i lavori in modo che eseguano il polling di SCM a intervalli specifici ed eseguano attività Ant su di essi. Abbiamo il nostro set-up per eseguire un target di build e test quando vengono rilevate nuove modifiche in SVN e quindi inviare un'e-mail a coloro che sono coinvolti nel progetto se gli obiettivi di build o test falliscono.

Usiamo TeamCity per tutti i nostri progetti java. Principalmente usiamo junit con maven e TeamCity ha già un corridore maven2, quindi impostare una nuova attività di costruzione è facile.

Dite a TeamCity dove si trova il vostro trunk svn e selezionate un corridore.

Se usi già IntelliJ c'è un plug-in per TeamCity in modo da poter ottenere un feedback immediato se i test superano l'esecuzione di un commit. E se sei davvero pigro, puoi selezionare l'esecuzione remota quando esegui un commit e seleziona " Commetti solo se i test superano " ;.

E come nota finale. TeamCity non si limita a eseguire solo java test, lo usiamo anche per eseguire test unit python.

Usiamo CruiseControl per costruire automaticamente progetti ed eseguire test unitari ogni volta che una modifica è impegnata nella sovversione. Può essere configurato per inviare notifiche e-mail se i test di build / unità falliscono.

Non sono sicuro di Hobbit, ma TeamCity è un altro bel server di integrazione continua . Può essere configurato per l'esecuzione su commit Subversion e ha un plugin IntelliJ decente. Invierà anche e-mail.

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