2015-08-14 74 views
0

我試圖用Jenkins構建我的Perl項目,以獲得JUnit報告和測試覆蓋率報告。我在編譯失敗時無法獲取代碼報告。這裏的構建是如何配置:我如何生成失敗的Jenkins版本的代碼覆蓋率報告

perl Build.PL; ./Build; 
cover -delete; 
PERL5OPT=-MDevel::Cover prove -b --formatter=TAP::Formatter::JUnit t/ > junit.xml; 
cover; 

與此問題是,當prove退出與非零狀態(也就是當我的一些測試失敗)的cover命令從不運行;報告:

Build step 'Execute shell' marked build as failure 

即使某些測試目前失敗,是否有獲得測試覆蓋率報告的好方法?

+0

不,'cover'流程'cover_db',這是去檢查狀態關於哪些代碼行已被執行的信息,哪些真值等。這是有趣的信息,無論所有測試是否通過。 – ajwood

+0

所以這只是一個*不*出錯的問題? – Flimzy

+0

或者爲什麼不在運行測試之前運行封面? – Flimzy

回答

0

你可以把cover部分爲Post Build任務,所以它總是執行,你不需要任何額外的邏輯,當您

+0

完美!我正在尋找後期製作選項,並且對它不存在感到失望。沒想到在插件庫中看起來雖然:) – ajwood

相關問題