如果代碼編輯選項(xiàng)被選擇了,將要執(zhí)行的測(cè)試將會(huì)被在光標(biāo)的位置被終止。當(dāng)你右鍵點(diǎn)擊在任何一個(gè)方法的內(nèi)部,出現(xiàn)‘RunTest(s)每個(gè)單獨(dú)的測(cè)試將會(huì)被執(zhí)行(如圖2)。右鍵點(diǎn)擊’Run Test(s)’的時(shí)候,所有的測(cè)試在一個(gè)命名空間中都會(huì)被執(zhí)行。'Run Test(s)'按鈕也同樣在'Solution Explorer'中被找到.它可以被用來(lái)執(zhí)行在一個(gè)解決方案,項(xiàng)目,或者項(xiàng)目item中的測(cè)試。
圖示 2. Run Test(s) menu item
隨機(jī)測(cè)試
隨機(jī)測(cè)試提供了一個(gè)很有用的拋棄命令行程序的替代物。他們無(wú)論如何不能替代了真正的單元測(cè)試。當(dāng)然,他們將要打算提供一個(gè)方便的本地私有方法在第三個(gè)版本中。
任何一個(gè)方法都能夠通過(guò)簡(jiǎn)單的右鍵點(diǎn)擊’Run Test’作為一個(gè)隨機(jī)測(cè)試被執(zhí)行。他可以是公有的,私有的,靜態(tài)的instance的方法。Any method can be executed as an ad-hoc test simply by right-clicking inside it and selecting 'Run test(s)'. It can be a 'public', 'private', 'static' or 'instance' method. Instance方法來(lái)說(shuō),當(dāng)你使用默認(rèn)的類(lèi)的構(gòu)造器的時(shí)候,一個(gè)對(duì)象將會(huì)被建立。當(dāng)一個(gè)測(cè)試被執(zhí)行的時(shí)候,Dispose方法也會(huì)被實(shí)現(xiàn)了IDisposable接口的時(shí)候唄調(diào)用。
如果一個(gè)隨即的測(cè)試返回一個(gè)蠶食,這個(gè)參數(shù)將會(huì)唄擴(kuò)展到’Test’的輸出面板。復(fù)雜的對(duì)象講有他們的域和屬性被顯示出來(lái)?蓴(shù)的對(duì)象將會(huì)列出來(lái)。原始的對(duì)象將會(huì)轉(zhuǎn)換成字符串并將被顯示出來(lái)。當(dāng)使用’Debug.WriteLine’的時(shí)候,同樣的結(jié)果也會(huì)被包含進(jìn)來(lái)。
測(cè)試輸出 & 測(cè)試列表
這個(gè) 'Test' 輸出面板將是一個(gè)窗口,在這里會(huì)看見(jiàn)所有的測(cè)試結(jié)果和警告信息(如圖三)。與命令行輸出和錯(cuò)誤信息一起,跟蹤和調(diào)試信息同樣將會(huì)被發(fā)送,如果所有的測(cè)試在一個(gè)項(xiàng)目或者解決方案中唄執(zhí)行,測(cè)試輸出框?qū)⒅伙@示忽略的或者沒(méi)有通過(guò)的測(cè)試。
當(dāng)一個(gè)測(cè)試失敗,測(cè)試的名字一起會(huì)被異常的信息和跟蹤隊(duì)列被顯示出來(lái)。如果代碼被帶著一些調(diào)試信息所編譯,相同的堆棧跟蹤信息將會(huì)計(jì)算出行數(shù)。雙擊這些部分會(huì)是一個(gè)駕馭澤這個(gè)雜亂代碼的很好方法。
圖示 3. Output Test Pane