xUnit安裝及注意事項


前言

對於單元測試,想必大家都已再熟悉不過了,同時單元測試的重要性也越發突出,在招聘中也特別強調單元測試,但是對於微軟內置的單元測試還是太過於繁瑣,於是都在尋找一種簡潔並且更加輕量的測試工具。用的最多的莫過於Nuit和xUnit了,關於Nuit就不再介紹,請參考園友【田園里的蟋蟀】文章,由於早期的xNunit安裝已經被棄用,所以需要注意,下面只是簡單的說明其安裝過程,特此記錄,以備忘。

話題

首先新建一個帶有單元測試的應用程序,在此之前得注意下:如果你之前安裝了Visual Studio Runner VSIX擴展,你必須首先卸載它,因為最新版本已經通過NuGet程序包來下載,在工具->擴展和更新中卸載其擴展,然后告知你重啟即可。可能你在運行測試時也會出現問題,可能是因為Runner緩存的緣故,此時你應該關閉VS,然后刪除這個文件夾%TEMP%\VisualStudioTestExplorerExtensions

 

接下來就是在單元測試中通過NuGet安裝xUnit程序包了,輸入xunit,接着如圖所示安裝Xunit.net

通過新建的測試會默認添加一個類,此類如下:

    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        public void TestMethod1()
        {
        }
    }

接下來我們需要用到我們安裝的xUnit,首先添加引用XUnit,然后將類中的方法修改為Fact而無需對類進行特性識別並進行測試:

    public class UnitTest1
    {
        [Fact]
        public void TestMethod1()
        {
            Xunit.Assert.Equal(4, Add(2, 3));
        }

        int Add(int x, int y)
        {
            return x + y;
        }
    }

然后打開:測試->窗口->測試資源管理器,左側會出現測試窗口,點擊全部運行,結果如下:

如上述圖所示,此時只會顯示生成成功,並未出現我們想要的結果。

注意事項

其實此時的測試管理器根本就未運行單元測試,必須要借助xUnit中的運行環境利用測試管理器來運行VS中的測試,此時我們繼續在單元測試中通過NuGet安裝xunit.runner.visualstudio,然后重新生成下,你會發現出現如下的結果:

這就說明添加的程序包已經起做用了,接下來你只需點擊全部運行或者把鼠標放在通過上,出現運行點擊即可,結果如下:

根據方法Equal中的第一個參數你需要測試的數據和第二個參數你實際的數據來判斷是否相等,很明顯結果錯誤,我們將其修改為相等再試試,結果如下,通過:

如果你是在控制器程序中進行單元測試,添加xunit.runner.console即可。

總結

xUnit是Nuit的升級版本,並且xUnit在VS2015上以及其他比如Xamarin中也已經得到了具體實現,所以利用它來進行單元測試再好不過了,當然你也不用擔心收費,因為它是開源的。

參考資料  

官方文檔:Running xUnit.net tests in Visual Studio  

github:xunit-github


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM