.Net单元测试方法
生活随笔
收集整理的這篇文章主要介紹了
.Net单元测试方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
單元測試是一種編程測試,這些測試既可以使用 Visual C# 或 Visual Basic 編寫,也可以使用 Visual C++ 編寫并用 /clr:safe 選項進行編譯。
單元測試用于通過直接調用某個類的方法(傳遞相應參數)來執行其他源代碼。因此,如果包括 Assert 語句,它們可以根據所期望的值來測試實際生成的值。單元測試方法位于測試類中,測試類則存儲在源代碼文件中。
可以使用能夠創建測試的初始源代碼的代碼生成功能來創建單元測試,也可以完全手動編寫測試。無論使用何種方式,測試類和所有測試方法都用編程屬性加以標識。
用 [TestClass()] 屬性標記每個測試類。每個單元測試都是一個使用 [TestMethod()] 屬性標記的測試方法。這些屬性是在生成單元測試時自動分配的;如果是手動編寫單元測試代碼,則必須自行添加類和方法的屬性。
測試異常
可以直接對方法進行異常測試,也可以對模擬對象進行異常測試,但是,對模擬對象進行異常測試,很少用,所以,這里就介紹對方法的異常測試。請看如下代碼,當用戶名為空的時候,拋出異常。
? public?bool?Valid(string?userName,?string?passWord){if?(string.IsNullOrEmpty(userName))?throw?new?ArgumentNullException("userName?is?null");var?isValid?=?userName?==?"admin"?&&?passWord?==?"123456";Log.Write(userName);return?isValid;}測試代碼如下
? [Test][ExpectedException(typeof(ArgumentNullException))]public?void?Vaild_Throw_Test(){MyLogin?l?=?new?MyLogin();l.Valid("",?"123456");}測試返回值
這里用到了一個LastCall的一個類,比較常用,一些輔助測試的功能,都在該類中。
[Test] public?void?Valid_Return() {MockRepository?mock?=?new?MockRepository();var?log?=?mock.DynamicMock<ILog>();using?(mock.Record()){log.WriteLog("admin");LastCall.Return(0);}var?returnValue?=?log.WriteLog("admin");Assert.AreEqual(returnValue,?0); }總結
以上是生活随笔為你收集整理的.Net单元测试方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: using IDisposable
- 下一篇: .Net Core with 微服务 -