2014-09-30 97 views
1

我似乎無法弄清楚如何配置Gradle TestNG運行的日誌輸出和結果文件夾。Gradle TestNG結果輸出

首先,Gradle默認爲HTML報告輸出選擇$project_dir/build/reports/tests。我如何更改此默認位置?我試圖設置testReportDirbuild.gradle無濟於事。在調用useTestNG()時指定地圖,例如

test { 
    if (runTest) { 
     // enable TestNG support (default is JUnit) 
     useTestNG { 
     outputDirectory = file("$buildDir/test-output") 
     } 
    } 
} 

不起作用。

其次,我嘗試使用TestNG的記者對一些額外的日誌記錄,e.g:

@Test 
public void testMethod() { 
    parseFile(); 
    Reporter.log("File parsed"); 
    Assert.assertTrue(...); 
} 

,但我似乎無法找到日誌!有人可以幫忙嗎?

回答

3

testReportDir屬性爲只讀。您需要設置Project.testReportDirName。您應該能夠像這樣啓用測試日誌記錄。

test { 
    testLogging.showStandardStreams = true 
} 
+0

我試過設置testReportDirName,它沒有效果。至於showStandardStreams - 我確實得到了標準輸出中的日誌,但是我如何將它們重定向到一個文件?或者最好是HTML格式的Gradle測試報告? – siphiuel 2014-10-01 15:31:04

+1

請注意,'testReportDirName'是Project上的一個屬性,而不是Test任務。確保將它放在'test {...}'關閉之外。此外,請嘗試將其設置爲絕對路徑'testReportDirName =「$ {buildDir}/myReportDir」'。任何記錄到標準輸出(或標準錯誤)的內容都包含在HTML報告中(通過單擊單個測試類,然後單擊'標準輸出'選項卡)或者在「構建/測試結果」中的XML和二進制文件中目錄。 – 2014-10-01 19:44:08