TestNG+Maven+ExtentReports在Jenkins中的測試報告出坑記(三):Build結果始終爲Success不能真實反映測試結果的解決方案

        現在測試可以在Jenkins中自動執行了,但又發現一個問題,就是測試結果中實際有出現failed的,但每次Jenkins都認爲跑成功了,給出的結果是Success。

       這時我想到了Log Parser插件,它可以用來解析log,然後根據解析結果來更正測試報告結果。

      果斷下載並安裝好該插件後,可以在已安裝插件中看到該插件。

       之後選中相應的項目,點擊左側的配置鏈接,然後點擊最上方的構建後操作,點擊“增加構建後操作步驟”下拉框,並選中“Console output (build log) parsing”選項。

之後將複選框都選中。根據情況選擇使用Use global rule或者Use project rule,如果該項目沒有什麼特殊的規則,就使用global規則,這裏演示的目的選擇了Use project rule,文章最後會介紹下Use global rule。

 重點來了,Path to rule file in workspace右側的輸入框中輸入規則文件名。那這個規則文件該如何書寫呢?

可以點擊右側的問號圖標,然後點擊鏈接(紅色框線中),就可以在新頁面打開Jenkins插件官網log parse網頁了。

其實看下就明白了,如果英文不太好還不知道怎麼用,就直接把上面的例子複製過來粘貼到新建的規則文件中(用記事本新建的文本文件即可),文件放到項目路徑下即可。下方列出我使用的規則文件內容:

ok /not really/

# match line starting with 'error ', case-insensitive
error /(?i)^error /
error /ERROR/

# list of warnings here...
warning /[Ww]arning/
warning /WARNING/

# create a quick access link to lines in the report containing 'INFO'
info /INFO/

# each line containing 'BUILD' represents the start of a section for grouping errors and warnings found after the line.
# also creates a quick access link.
start /BUILD/

設置好後再次構建項目,這次終於得到了相應的結果:大家看到有了ERROR,測試跑不過, 但給出的是BUILD SUCESS,通過Log Parse插件就做到了將結果改爲FAILURE。

 

還可以在Jenkins中的以管理員登錄,點擊Manage Jenkins->Configure System,設置通用的規則文件,這樣如果項目沒有特別的規則,直接選擇通用的規則文件即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章