2015-12-14 128 views
5

我們在Jenkins上使用Gradle進行TestNG測試。如果沒有測試運行,如何失敗Jenkins構建?

作業配置:
Build部分 - >調用搖籃腳本 - >使用搖籃包裝 - >任務:

clean test -Dgroups=myTestNGTestGroupName 

Jenkins控制檯輸出,我可以看到從具體參數gradlew.bat執行日誌(其中一個是-Dgroups=myTestNGTestGroupName))。

我們有相當多的Jenkins工作和自動化Selenium測試。
由於每天我們只檢查失敗的工作。

在重構測試中TestNG組名稱可能會更改或可能發生錯字。
如果您在測試庫,使試驗組名和忘了更新Jenkins工作:
執行測試和作業仍在傳遞(構建成功)。

如果沒有執行測試,我怎麼能告訴Jenkins將構建標記爲非成功​​?

回答

2

TestNG產生(即使被執行0測試)測試運行
後每次testng-results.xml文件。

我們可以分析此文件。我發現使用 Text-finder Plugin
最簡單的解決方案(這在我的情況下,已經加入到Jenkins

Post-build Actions添加Jenkins Text Finder如下: text-finder-plugin

它的外觀在Jenkins控制檯輸出日誌:

BUILD SUCCESSFUL 

Total time: 42.105 secs 
Build step 'Invoke Gradle script' changed build result to SUCCESS 
Archiving artifacts 
Checking <testng-results skipped="0" failed="0" total="0" passed="0"> 
c:\jenkins\workspace\my-job-name\build\reports\tests\testng-results.xml: 
<testng-results skipped="0" failed="0" total="0" passed="0"> 
Build step 'Jenkins Text Finder' changed build result to UNSTABLE 
... 
Finished: UNSTABLE 
相關問題