2013-04-02 6 views
5

Stavo cercando di aggiungere alcuni test di unità automatizzati al mio progetto con Bamboo e ho riscontrato alcuni problemi. I test dell'unità sono eseguiti da googletest, che crea un file XML che dovrebbe essere compatibile con il parser JUnit.Il parser JUnit di Bamboo non analizzerà il mio gtest output.xml

Tuttavia, sto ottenendo il seguente errore durante l'esecuzione di Parser JUnit di bambù:

02-Apr-2013 12:11:22 Starting task ''Parse UnitTest output' of type 'com.atlassian.bamboo.plugins.testresultparser:task.testresultparser.junit' 
02-Apr-2013 12:11:22 Parsing test results... 
02-Apr-2013 12:11:22 Failing task since test cases were expected but none were found. 
02-Apr-2013 12:11:22 Finished task 'Parse UnitTest output' 

Questo non sembra avere nulla a che fare con il file XML in sé, come ho provato alcuni . Questo includeva il mio output.xml, generato da googletest e gli output di esempio da https://confluence.atlassian.com/display/BAMBOO/JUnit+parsing+in+Bamboo.
Ho anche adattato i suddetti file ai due file .xsd proposti, che dovrebbero corrispondere all'output previsto dal parser JUnit, ma senza alcun effetto.

Aggiornamento:
Fino ad ora ho detto al JUnit Parser di cercare $ {} bamboo.build.working.directory /output.xml
Quando ho provato **/* XML ha funzionato..
Come ho capito ora, dopo aver letto attentamente la descrizione dell'attività, devo dargli una cartella. Ma posso dargli anche i file, se lo faccio in ant-style (con un glob?). Questo è per lo meno molto confuso e non risponde ancora completamente alla domanda iniziale. Quindi se qualcuno potesse illuminarmi, per favore fallo.

+0

Ho sollevato una richiesta di supporto per Bamboo. Sto anche avendo lo stesso problema https://jira.atlassian.com/browse/BAM-13082 – Tristans

+0

Tristans, da allora ho trovato una soluzione che almeno funziona per me. Vedi l'aggiornamento sopra, forse funziona anche per te. – LarissaGodzilla

+0

Penso che dovresti dare un percorso relativo: relativo alla directory di costruzione corrente. $ {bamboo.build.working.directory} /output.xml è assoluto, non relativo. Può essere questa la ragione del tuo problema? Inoltre, ricorda che la directory di costruzione può cambiare tra i lavori. – ynka

risposta

0

Questa è una domanda super vecchia, ho pensato di aggiungere una risposta per i posteri. Come poche persone hanno commentato, il valore di configurazione per i file di output di test richiede un percorso relativo. La domanda è, relativamente a cosa?

Penso che la risposta a questo dipenda da come sono stati configurati i repository di origine, ma in generale sarà relativo alla radice del progetto. Se tutto il resto fallisce, guarda dove bambù sta mettendo il tuo codice sorgente quando viene estratto; questa sarà la directory in cui il bambù accoda il percorso di ricerca dell'output di test.

Per la sintassi di configurazione, è corretto utilizzare i modelli di stile ant (Learning Ant path style come riferimento).

Per fare un esempio, se si dispone di un progetto che sul computer locale vive a C:\git\MyProject, ed i risultati dei test finisce a C:\git\MyProject\Output\Tests\output.xml, allora si sarebbe specificare Output/Tests/output.xml nel campo appropriato 'risultati personalizzati directory specificare' configurazione dell'attività. È anche possibile utilizzare Output/**/*.xml per cercare tutti i file .xml nella directory Output.