2009-11-21 70 views
3

我剛開始在Visual Studio項目中使用MSTest(NUnit已經是我之前使用的),並且我有幾個問題。VS 2008/MSTest - 如何運行所有測試的子集?

我看到,如果我右鍵單擊一個測試方法並選擇運行測試,它會測試一種方法。好。但是有沒有辦法可以設置一個測試運行,只對我選擇的測試x進行測試,而不是全部測試?我已經看過測試菜單和其中的選項,但我無法弄清楚如何做到這一點。

另外,如何調試我的測試的子集?現在,如果我調試我的MSTest項目,所有這些都運行。對於初學者的問題感到抱歉,我一直在圍繞菜單選項踢球,但在這些問題上沒有找到我。謝謝!

回答

2

科納適合你希望保持一個列表;我發現很多時候我不需要一個經得起時間考驗的名單,只有一個我可以在接下來的幾分鐘/幾小時內運行。

在這種情況下,我使用「測試視圖」窗口,突出顯示要運行的對象(CTRL +左鍵單擊以獲取倍數),然後按運行按鈕。

善良,

0

,我很驚訝的另一個選項,看看沒有答案是在當前上下文中運行測試。如果您希望運行的測試子集位於相同的測試類或相同的名稱空間中,則可以將這些測試作爲一個組運行,而不必對列表或選擇進行任何操作。 ctrlr + t將在遊標範圍內運行測試。

這個我覺得非常有用,因爲感興趣的測試(或可能受到變化的影響)傾向於被本地化到相同的測試類中。另外測試列表是另一個要維護的部分。我注意到添加新的測試和重命名舊的測試打破了我所做的列表。因此,如果你有一個你需要作爲一個單元進行測試的完善團隊,測試列表可能是最有用的。

例如,如果遊標在測試本身,它將只會運行該測試。向上移動幾行到測試之間的空間,您將運行該類中的所有測試。您還可以將光標移動到該類的外部,並在該名稱空間中運行所有測試。

namespace Tests 
{ 
    // Cursor here to run all tests in Tests 
    [TestClass()] 
    public class ClassOfTests 
    { 
     // Cursor here to run all Tests in this class 
     [TestMethod()] 
     public void MethodUnderTest_WithThisSetup_ReturnsValue() 
     { 
      // Cursor here to only run this test 
     } 

    } 

} 
相關問題