xunit的assert常用部分方法解釋


布爾:
True(返回bool的方法或者字段) 判斷是否為true
False(返回bool的方法或者字段) 判斷是否為false

字符串(區分大小寫):
Equal(期待結果,實際結果) 判斷輸出值和期待值是否相等
StartsWitch(指定字符串,結果) 判斷結果中是否是以指定字符串為開頭
EndsWitch(指定字符串,結果) 判斷結果中是否是以指定字符串為結尾
Contains(指定字符串,結果) 判斷結果中是否包含指定字符串
Matches(正則表達式,例如"[A-Z]{1}[a-z]",結果值,例如指定的字符串變量) 判斷指定的字符串是否符合正則表達式

數值:
Equal(期待結果,實際結果) 判斷輸出值和期待值是否相等
InRange(實際結果,最低值,最高值) 判斷給定值是否在指定區間內

NULL:
Null(給定值) 判斷給定值是否為NULL
NotNull(給定值) 判斷給定值是否不為NULL

集合:
Contains(期待值,集合) 判斷指定集合中是否有和期待值一樣的選擇項
DoesNotContain(期待值,集合) 判斷指定集合中是否不包括和期待值一樣的選項
Contains(集合,x=>x.startsWith("指定字符串")) 判斷指定集合中是否至少有一個元素是以指定字符串開頭的,這里startsWith也可以替換成其他方法條件
Equal(集合1,集合2) 判斷兩個集合中的每個元素成員是否都是一樣的
All(集合,x=>Assert.True(x.length>=2)) 判斷元素中的每個成員是否都滿足某個條件,比如這里是每個元素的長度都要至少等於2

object:
IsType<給定的對象類型T>(給定的實例對象) 判斷給定的對象類型和給定的實例類型是否是一致的,這里要注意的是,計算是父子類(派生)關系,在這個斷言中也是不成立的
IsAssignableFrom<給定的對象類型T>(給定的實例對象) 判斷給定的對象類型和給定的實例類型是否是一致的,這個方法支持父子類(派生)關系的判斷通過
NotSame(實例1,實例2) 判斷兩個實例對象不是同一個實例對象
Same(實例1,實例2) 判斷兩個實例對象是同一個實例對象

異常:
Throws<拋出異常的類型,例如throw new 異常的類型(“你要輸出的消息”)>(()=>new 有異常的這個對象()) 判斷指定的對象類中是否跑出了指定類型的異常,括號中的是一個匿名的方法
Equal("異常消息文字",取得Throws的返回值.Message) 判斷異常中的文字是否是指定的字符串內容
事件(這一部分不是很明白,希望知道的大佬可以指教一下):
例子:
public event eventHandler<EventArgs> PatientSlept;
public void OnPatientSleep()
{
PatientSlept.Invoke(this,eventArgs.Empty);
}
public void Sleep()
{
OnPatientSleep();
}

Raises<事件參數>(
handler=>p.PatientSlept+=handler,(綁定一個事件)
handler=>p.PatientSlept-=handler,(去掉一個事件)
()=>p.Sleep()(事件的具體執行方法,用來觸發事件)
) 判斷事件是否發生過

ProptyChanged 這個具體沒有使用過,希望大神給點意見


免責聲明!

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



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