2012-03-30 162 views
1

我無法讓我的方法B測試運行。邏輯很好,但是當單元測試運行時,只有方法A會運行。如果方法A和B根據斑點進行切換,則只有方法B會運行。很明顯,代碼在某些時候是錯誤的。我是否需要從方法A中調用方法B的測試來獲得單元測試的運行?第二單元測試未運行

我對C#很新,所以原諒我的基本問題。

using redacted; 
using Microsoft.VisualStudio.TestTools.UnitTesting; 
using System; 

namespace UnitTests 
{ 
    [TestClass()] 
    public class ClassTest 
    { 
     public TestContext TestContext{get;set;} 

     [TestMethod()] 
     public void MethodATest() 
     { 
      the unit test 
     } 

     [TestMethod()] 
     public void MethodBTest() 
     { 
      the unit test 
     } 
    } 
} 
+0

這對我來說很好。你確定這裏沒有一些相關的代碼缺失嗎? – 2012-03-30 17:22:57

+0

你如何執行測試? – tsells 2012-03-30 17:24:43

+0

你是否啓用了異常?也許sme CLR異常被拋出 – sll 2012-03-30 17:31:41

回答

2

看起來不錯。

確保您正在運行所有測試(測試 - >運行 - >所有測試),而不是像上下文中的測試(Ctrl + R,T)或具有某種測試列表運行。

+0

這工作。我不確定發生了什麼,我一直在解決方案中運行所有測試(Ctrl + R),它只會運行方法A測試。我關閉了所有的東西,但它仍然不起作用。所以我去吃午飯,當我回來的時候,我再次發起了一切,並且工作。兩者之間唯一的區別是我沒有選中項目屬性中的「部署最新版本的.NET CF」。所以我不確定它是否是一個緩存問題,或者如果這真的很重要。 – TomJ 2012-03-30 18:26:54