單元測試中Assert類的用法

Assert類所在的命名空間為Microsoft.VisualStudio.TestTools.UnitTesting

在工程文件中只要引用Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll就可以使用了,

在這里我會舉例說明Assert里面的一些主要的靜態成員。

1、 AreEqual:方法被重載了N多次,主要功能是判斷兩個值是否相等;如果兩個值不相等,則測試失敗。

2、AreNotEqual:方法被重載了N多次,主要功能是判斷兩個值是否不相等;如果兩個值相等,則測試失敗。

3、 AreNotSame:引用的對象是否不相同;如果兩個輸入內容引用相同的對象,則測試失敗.

4、AreSame:引用的對象是否相同;如果兩個輸入內容引用不相同的對象,則測試失敗.

5、Fail:斷言失敗。

6、Inconclusive:表示無法證明為 true 或 false 的測試結果

7、IsFalse:指定的條件是否為 ?false;如果該條件為 ?true,則測試失敗。

8、 IsTrue:指定的條件是否為 ?true;如果該條件為 ?false,則測試失敗

9、IsInstanceofType:測試指定的對象是否為所需類型的實例;如果所需的實例不在該對象的繼承層次結構中,則測試失敗

10、IsNotInstanceofType: 測試指定的對象是否為所需類型的實例;如果所需的實例在該對象的繼承層次結構中,則測試失敗

11、IsNull:測試指定的對象是否為非空

12、IsNotNull:測試指定的對象是否為非空具個例子來說明上面所寫的。(先創一個測試工程)?

?

using Microsoft.VisualStudio.TestTools.UnitTesting; 
using System; 
using System.Text; 
using System.Collections.Generic; 
namespace Temp_Test 
{ /// <summary> ///這是 TempDll.TempDll 的測試類,旨在 ///包含所有 TempDll.TempDll 單元測試 ///</summary> 
     [TestClass()] public class TempDllTest { private TestContext testContextInstance; /// <summary> ///獲取或設置測試上下文,上下文提供 ///有關當前測試運行及其功能的信息。 ///</summary> public TestContext TestContext { get { return testContextInstance; } set { testContextInstance = value; } } #region 附加測試屬性 //  //編寫測試時,可使用以下附加屬性: // //使用 ClassInitialize 在運行類中的第一個測試前先運行代碼 // //[ClassInitialize()] //public static void MyClassInitialize(TestContext testContext) //{ //} // //使用 ClassCleanup 在運行完類中的所有測試后再運行代碼 // //[ClassCleanup()] //public static void MyClassCleanup() //{ //} // //使用 TestInitialize 在運行每個測試前先運行代碼 // //[TestInitialize()] //public void MyTestInitialize() //{ //} // //使用 TestCleanup 在運行完每個測試后運行代碼 // //[TestCleanup()] //public void MyTestCleanup() //{ //} // #endregion /// <summary> ///測試方法入口處 ///</summary> 
         [TestMethod()] public void Test() { System.IO.FileInfo file = null; System.IO.FileInfo file1 = file; System.IO.DirectoryInfo dir = null; string tempTrue = "T"; string tempFalse = "F"; //Assert.AreEqual(tempTrue, tempFalse, "兩個對想不相同,測試失敗"); //Assert.AreNotSame(file1, tempTrue, "兩個引入的對象是同一個,測試失敗"); //Assert.AreSame(file1, file, "兩個引入的對象是不相同的"); //Assert.Fail("不管是什么,直接宣布測試失敗"); //Assert.Inconclusive("同Fail差不多,但不是失敗,只是測試不能通過"); //Assert.IsFalse(true, "如果是真,表示測試失敗"); //Assert.IsTrue(false,"如果為假,請示測試失敗"); //Assert.IsInstanceOfType(true,tempTrue.GetType(),"類型不相同,測試失敗"); //Assert.IsNull(tempFalse,"不是空所以測試失敗");            
         } } }

?

Assert類所在的命名空間為

Microsoft.VisualStudio.TestTools.UnitTesting 在工程文件中只要引用Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll就可以使用了,

?

在這里我會舉例說明Assert里面的一些主要的靜態成員。1、?????????????AreEqual:方法被重載了N多次,主要功能是判斷兩個值是否相等;如果兩個值不相等,則測試失敗。2、?????????????AreNotEqual:方法被重載了N多次,主要功能是判斷兩個值是否不相等;如果兩個值相等,則測試失敗。3、?????????????AreNotSame:引用的對象是否不相同;如果兩個輸入內容引用相同的對象,則測試失敗.4、?????????????AreSame:引用的對象是否相同;如果兩個輸入內容引用不相同的對象,則測試失敗.5、?????????????Fail:斷言失敗。6、?????????????Inconclusive:表示無法證明為 true 或 false 的測試結果7、?????????????IsFalse:指定的條件是否為??false;如果該條件為??true,則測試失敗。8、?????????????IsTrue:指定的條件是否為??true;如果該條件為??false,則測試失敗9、?????????????IsInstanceofType:測試指定的對象是否為所需類型的實例;如果所需的實例不在該對象的繼承層次結構中,則測試失敗10、????????IsNotInstanceofType:?測試指定的對象是否為所需類型的實例;如果所需的實例在該對象的繼承層次結構中,則測試失敗11、????????IsNull:測試指定的對象是否為非空12、????????IsNotNull:測試指定的對象是否為非空具個例子來說明上面所寫的。(先創一個測試工程)?

轉載于:https://www.cnblogs.com/shy1766IT/p/5574155.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/374550.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/374550.shtml
英文地址,請注明出處:http://en.pswp.cn/news/374550.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

CocoaPods安裝使用

$ gem sources --remove https://rubygems.org/ //等有反應之后再敲入以下命令 $ gem sources -a http://ruby.taobao.org/*** CURRENT SOURCES ***http://ruby.taobao.org/ //出現這個說明安裝正確$ sudo gem install cocoapods 安裝cocoaPods到項目的路徑下 $ touch Pod…

303. 區域和檢索 - 數組不可變(數組前綴和知識應用)

給定一個整數數組 nums&#xff0c;處理以下類型的多個查詢: 計算索引 left 和 right &#xff08;包含 left 和 right&#xff09;之間的 nums 元素的 和 &#xff0c;其中 left < right 實現 NumArray 類&#xff1a; NumArray(int[] nums) 使用數組 nums 初始化對象 in…

pat1049. Counting Ones (30)

1049. Counting Ones (30) 時間限制10 ms內存限制65536 kB代碼長度限制16000 B判題程序Standard作者CHEN, YueThe task is simple: given any positive integer N, you are supposed to count the total number of 1s in the decimal form of the integers from 1 to N. For ex…

加油站會員管理系統源碼php_加油站使用會員管理系統,如何解決行業瓶頸?

隨著人們生活條件的不斷改善&#xff0c;基本上家家戶戶都有了私家車輛&#xff0c;這對于加油站而言&#xff0c;覆蓋的客戶量也逐漸增多。現在很多加油站還是處于比較傳統的收銀模式和會員營銷管理模式&#xff0c;收銀效率低&#xff0c;客戶得不到全方面的管理。尤其是在高…

專2-第二課 Eclipse開發環境搭建

2.1下載Eclipse 2.2 安裝C/C版本的Eclipse 2.3 安裝JDT插件開發Java程序 2.4 使用Eclipse開發驅動程序 既然安裝了eclipse來進行驅動學習&#xff0c;那么我們就先來試試看eclipse開發驅動的大致流程。這里以Linux設備驅動作為示列給讀者展示整個流程&#xff0c;Android底層的…

使用JAXB從XSD生成XML

這是最初由JCG合作伙伴 Experiences Unlimited的Mohamed Sanaulla發表的帖子。 Mohamed解釋了如何使用JAXB從給定的XSD生成XML 。 &#xff08;注意&#xff1a;對原始帖子進行了少量編輯以提高可讀性&#xff09; 我們可以使用JAXB使用給定的Schema將Java對象編組為XML&#…

tkinter 菜單添加事件_Tasker的最新測試劫持了Android 11的電源菜單

流行的Android自動化應用Tasker 最近收到了重大更新&#xff0c;為該應用引入了許多新功能。該更新包括解鎖應用程序讀取手機上任何傳感器以觸發任務的功能&#xff0c;使您可以通過任何第三方應用程序自動發送短信或撥打電話的功能&#xff0c;完全請勿打擾自定義功能。通過鏈…

CLR via C#(18)——Enum

1. Enum定義 枚舉類型是經常用的一種“名稱/值”的形式&#xff0c;例如&#xff1a; public enum FeedbackStatus { New, Processing, Verify, Closed } 定義枚舉類型之后我們在使用時方便了許多&#xff0c;不用再記著0代表什么狀態…

PHP中 magic_quotes_gpc 和 magic_quotes_runtime 區別及其反斜線轉義問題

php中關于反斜線轉義&#xff1a;php中數據的魔法引用函數 magic_quotes_gpc 或 magic_quotes_runtime 設置為on時&#xff0c;當數據遇到 單引號 和 雙引號" 以及 反斜線\ NULL時自動加上反斜線&#xff0c;進行自動轉義。注釋&#xff1a;默認情況下&#xff0c;PH…

JDK中的設計模式

Zen的JCG合作伙伴Brian Du Preez 是IT藝術領域的合作伙伴&#xff0c;他在收集JDK中最常見的設計模式方面做得非常出色。 模式列表確實令人印象深刻且很長&#xff0c;所以讓我們不再ba不休&#xff0c;向您展示它。 前幾天&#xff0c;我在企業Dev中看到了Rob Williams Brain …

414. 第三大的數

給你一個非空數組&#xff0c;返回此數組中 第三大的數 。如果不存在&#xff0c;則返回數組中最大的數 方法一 首先將數組排序&#xff0c;然后通過集合去除重復的元素&#xff0c;最后進行一次判斷&#xff0c;選擇第三大元素還是最大元素 class Solution {public int thir…

bufferevent 與 socket

http://blog.sina.com.cn/s/blog_56dee71a0100qx4s.html 很多時候&#xff0c;除了響應事件之外&#xff0c;應用還希望做一定的數據緩沖。比如說&#xff0c;寫入數據的時候&#xff0c;通常的運行模式是&#xff1a; l 決定要向連接寫入一些數據&#xff0c;把數據放入到緩沖…

Codeforces Round #102 (Div. 1) A. Help Farmer 暴力分解

A. Help Farmer題目連接&#xff1a; http://www.codeforces.com/contest/142/problem/A Description Once upon a time in the Kingdom of Far Far Away lived Sam the Farmer. Sam had a cow named Dawn and he was deeply attached to her. Sam would spend the whole summe…

電力電子、電機控制系統的建模和仿真_清華團隊研發,首款國產電力電子仿真軟件來啦~已捐贈哈工大、海工大、清華使用!...

點擊上方電氣小青年&#xff0c;關注并星標由于微信改版&#xff0c;只有星標才能及時看到我們的消息哦━━━━━━推薦閱讀&#xff1a;《膜拜大神&#xff01;清華大學電機系2021年接收推薦免試直碩(博)生擬錄取名單公示&#xff01;》《滴滴程序員年薪80萬被鄙視不如在二本…

JVM如何處理鎖

當我們談論最新版本的Sun Hotspot Java虛擬機1.6時&#xff0c;當您嘗試從java.util.concurrent.locks.Lock實現獲取鎖或輸入同步塊時&#xff0c;JVM將執行以下三種鎖類型&#xff1a; 有偏見的 &#xff1a;有時即使在并發系統中也沒有爭用&#xff0c;并且在這種情況下&…

基于node.js及express實現中間件,實現post、get

首先&#xff0c;當然是有必要的環境&#xff0c;安裝node&#xff0c;這個我就不多說了。 依賴模塊&#xff1a; "express": "^4.13.4", "request": "^2.72.0", "body-parser": "^1.13.3",頁面 $.ajax({type: &q…

可視化分析之圖表選擇

轉載于:https://www.cnblogs.com/yymn/p/4783631.html

定義并調用函數輸出 fibonacci 序列_科學網—Zmn-0351 薛問天:再談數學概念的定義,評新華先生《0345》...

Zmn-0351 薛問天&#xff1a;再談數學概念的定義&#xff0c;評新華先生《0345》【編者按。下面是薛問天先生發來的文章。是對《Zmn-0345》新華先生文章的評論。現在發布如下&#xff0c;供網友們共享。請大家關注并積極評論。另外本《專欄》重申&#xff0c;這里純屬學術討論&…

Java和內存泄漏

總覽 術語“內存泄漏”在Java中的使用方式不同于在其他語言中使用的方式。 通用術語中的“內存泄漏”是什么意思&#xff0c;在Java中如何使用&#xff1f; 維基百科的定義 當計算機程序消耗內存但無法將其釋放回操作系統時&#xff0c;就會發生計算機科學中的內存泄漏&#x…

453. 最小操作次數使數組元素相等

給你一個長度為 n 的整數數組&#xff0c;每次操作將會使 n - 1 個元素增加 1 。返回讓數組所有元素相等的最小操作次數。 class Solution {public int minMoves(int[] nums) {int res 0;int sum 0;int n nums.length;for(int i 0;i<n;i){sum nums[i];}res sum - min…