2013-04-02 24 views
5

Bambu'yla projeme bazı otomatik Birim Testleri eklemeye çalışıyordum ve bazı sorunlarla karşılaşıyordum. Birim Testleri kendilerini JUnit ayrıştırıcıyla uyumlu olması gereken bir XML dosyası oluşturan googletest ile yapılır. Bambu JUnit Ayrıştırıcı çalıştırırkenBambo'nun JUnit Ayrıştırıcı benim gtest çıkışımı ayrıştırmaz.xml

Ancak, aşağıdaki hatayı alıyorum: Birkaç çalıştığım gibi

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' 

Bu, .xml dosyası kendisiyle ilgisi var gibi görünmüyor . Bu, googletest tarafından oluşturulan kendi output.xml ve https://confluence.atlassian.com/display/BAMBOO/JUnit+parsing+in+Bamboo örnek çıktılarını içeriyordu.
Ayrıca, söz konusu dosyaları önerilen iki .xsd dosyasına karşı da uyarladım. Bu, JUnit Ayrıştırıcının beklediği çıktıyla eşleşmeli, ancak bunların hiç bir etkisi olmayacak.

Güncelleme:
şimdiye kadar ben **/* işe yaradı xml çalıştığımızda $ {bamboo.build.working.directory} /output.xml
aramaya JUnit Ayrıştırıcı anlattı kadar..
Şimdi anladığım kadarıyla, görev açıklamasını çok dikkatli bir şekilde okuduktan sonra, ona bir klasör vermeliyim. Ama ben de anten tarzında (glob ile) yaparsam dosya verebilirim. Bu en azından kafa karıştırıcı ve hala inital soruya tam olarak cevap vermiyor. Yani eğer birisi beni aydınlatsa, lütfen yap.

+0

Bambu için bir destek isteği geliştirdim. Aynı sorunu yaşıyorum https://jira.atlassian.com/browse/BAM-13082 – Tristans

+0

Tristans, en azından benim için çalışan bir çözüm buldum. Yukarıdaki güncellemeye bakın, belki de sizin için çalışır. – LarissaGodzilla

+0

Sanırım şu anki yapı dizinine göre göreli bir yol vermeniz gerekiyor. $ {bamboo.build.working.directory} /output.xml mutlak değil, göreceli değil. Bu senin sorununun sebebi olabilir mi? Ayrıca, yapı dizininin işler arasında değişebileceğini unutmayın. – ynka

cevap

0

Bu çok eski bir soru, ben bir posterity için cevap ekleyeceğimi düşündüm. Birkaç kişi yorumda bulunduğundan, test çıktı dosyalarının konfigürasyon değeri göreceli bir yol gerektirir. Soru, neye göre?

Bunun yanıtı, kaynak depolarınızı nasıl yapılandırdığınıza bağlı olduğuna inanıyorum, ancak genelde projenizin kökeni ile ilgili olacaktır. Her şey başarısız olursa, bambu kaynak kodunuzu teslim aldığında nereye koyduğuna bakın; Bambu, test çıktısı arama yolunu ekleyen dizindir.

Yapılandırma söz dizimi için, bu stil stili desenlerin kullanılabileceğini düzeltebilirsiniz (referans için Learning Ant path style). Eğer yerel makinedeki C:\git\MyProject yaşayan bir proje varsa ve test sonuçları C:\git\MyProject\Output\Tests\output.xml en sonunda eğer

Sadece bir örnek olarak, o zaman içinde Output/Tests/output.xml belirtmek istiyorum uygun alanını 'özel sonuç dizinleri belirtin' görev yapılandırması. Çıkış dizinindeki tüm .xml dosyalarını aramak için Output/**/*.xml'u da kullanabilirsiniz.