2017-01-23 98 views
1

我有一個單元測試Assert.Inconclusive,但在VS測試瀏覽器中的測試結果是「測試未運行」,而不是「不確定」。 Assert.Fail和Assert.Pass都返回正確的測試結果。我究竟做錯了什麼?NUnit標記不確定結果作爲「測試未運行」

Visual Studio 2015,NUnit的類庫項目3.謝謝!

[TestFixture] 
public class Class1 
{ 
    [Test] 
    public void scratch() 
    { 
     Assert.Inconclusive(); 
    } 
} 

packages.config:

<?xml version="1.0" encoding="utf-8"?> 
<packages> 
    <package id="NUnit" version="3.6.0" targetFramework="net452" /> 
    <package id="NUnit.Console" version="3.6.0" targetFramework="net452" /> 
    <package id="NUnit.ConsoleRunner" version="3.6.0" targetFramework="net452" /> 
    <package id="NUnit.Extension.NUnitProjectLoader" version="3.5.0" targetFramework="net452" /> 
    <package id="NUnit.Extension.NUnitV2Driver" version="3.6.0" targetFramework="net452" /> 
    <package id="NUnit.Extension.NUnitV2ResultWriter" version="3.5.0" targetFramework="net452" /> 
    <package id="NUnit.Extension.TeamCityEventListener" version="1.0.2" targetFramework="net452" /> 
    <package id="NUnit.Extension.VSProjectLoader" version="3.5.0" targetFramework="net452" /> 
</packages> 
+0

當我通過NUnit控制檯運行它時,測試結果是預期的「不確定」。 – Cram

+0

另外,我只注意到上面粘貼的packages.config xml不包含nunit測試適配器。在排除故障時,我必須刪除它。無論如何,它現在又回到了項目中,而且在清理和重建之後,我仍然遇到同樣的問題。 '' – Cram

回答

2

NUnit的3 VS適配器正是...的適配器。 NUnit的測試和測試結果的概念最適合於由Visual Studio及其測試瀏覽器理解的概念。

Visual Studio中不存在不確定結果的NUnit概念,因此必須將其報告爲其他內容。 Not Run似乎和我們所能得到的一樣接近。

您會注意到的另一個差異是Visual Studio將新的NUnit警告結果報告爲跳過。這更糟糕,但我們使用它,以便Visual Studio將顯示與忽略測試相同的警告圖標。

現在,我認爲我們不能得到更好的翻譯,雖然建議是受歡迎的。現在微軟已經開放了他們的測試平臺(https://github.com/Microsoft/vstest),也許有人會給他們一個公關,擴展測試結果支持的價值。

+0

謝謝查理。 – Cram