2014-03-30 160 views
1

我有mstest TestClass現在包含35個測試,可能會增長。測試的方法通常是遞歸的(因此可能會導致無限循環的bug),所以我想爲這些測試設置超時。是否有一個屬性可以一次爲TestClass中的所有測試設置測試超時?

有沒有一種方法(理想情況下屬性)爲所有測試設置相同的超時在一個地方? TimeoutAttribute只能用於方法,不能用於類。我真的不喜歡複製同樣的TimeoutAttribute 35次。

或者,我可以創建自己的Attribute,它可以與類一起使用,並標記該類中具有指定屬性的每個方法?

回答

2

您需要通過測試運行器配置完成此操作。 (更多細節可以參考here)。

要設置測試運行超時使用測試的所有測試設置文件

  1. 打開Solution Explorer中。
  2. 在解決方案的「解決方案項目」文件夾中,雙擊測試設置文件。 (出現配置設置對話框。)
  3. 選擇測試超時。
  4. 檢查中止測試運行,如果其總執行時間超過:
  5. 設置測試運行超時值,以小時,分鐘和秒爲單位。
  6. 選擇保存,然後選擇關閉。

要使此設置生效,您編輯的測試設置 必須是活動的測試設置。有關更多信息,請參閱How to: Select the Active Test Settings from Microsoft Visual Studio

相關問題