所以我有一個工廠類,我試圖找出單元測試應該做什麼。從這個question我可以驗證返回的接口是我期望的特定具體類型。具有具體類作爲返回類型的單元測試工廠方法
我應該檢查工廠是否返回具體類型(因爲目前沒有必要使用接口)?目前我正在做類似如下:
[Test]
public void CreateSomeClassWithDependencies()
{
// m_factory is instantiated in the SetUp method
var someClass = m_factory.CreateSomeClassWithDependencies();
Assert.IsNotNull(someClass);
}
這樣做的問題是,Assert.IsNotNull
似乎有些多餘。
而且,我的工廠方法可能設立特定類的依賴,像這樣:
public SomeClass CreateSomeClassWithDependencies()
{
return new SomeClass(CreateADependency(), CreateAnotherDependency(),
CreateAThirdDependency());
}
我想確保我的工廠方法正確設置所有這些依賴。是否沒有其他的方法來做到這一點,然後再依賴我的屬性,然後在單元測試中檢查? (我不是修改測試主題以適應測試的大愛好者)
編輯:爲了迴應Robert Harvey的問題,我使用NUnit作爲我的單元測試框架(但我不會想到它會產生太大的差異)
你使用什麼測試框架? – 2009-06-30 03:18:18
一些測試框架要求您的類是虛擬的,以便測試框架可以繼承它們。有些不。巨大的差異。 – 2009-06-30 04:15:10