所以我有一个工厂类,我正在尝试找出单元测试应该做什么。从这个问题中,我可以验证返回的接口是否属于我所期望的特定具体类型。
如果工厂返回具体类型,我应该检查什么(因为目前不需要使用接口)?目前我正在做类似以下的事情:
[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());
}
我想确保我的工厂方法正确设置了所有这些依赖项。有没有其他方法可以做到这一点,然后让public/internal
我在单元测试中检查这些依赖项属性?(我不喜欢修改测试对象以适应测试)
编辑:为了回答罗伯特哈维的问题,我使用 NUnit 作为我的单元测试框架(但我不会想到它会产生太大的影响)