【发布时间】:2015-01-31 04:20:25
【问题描述】:
对只调用 2 个其他方法且没有逻辑的方法进行单元测试的最佳做法是什么?
internal ICollection<ObjA> FunctionA()
{
IEnumerable<ObjB> b = _factory.FunctionB();
return FunctionC(b);
}
_factory.FunctionB() 和 FunctionC(b) 都有针对它的单元测试,所以如果这些方法坏了我们就会知道。
我正在考虑伪造这两个函数,并且只进行一个单元测试以确保从FunctionA() 调用这些方法。但是如果FunctionB() 或FunctionC() 发生变化,FunctionA() 可能会变成误报。
【问题讨论】:
-
模拟出这两个功能,正如你提到的。如果任何一个模拟函数发生变化,这不是误报;看到 functionA 调用这两个函数是正确的测试。这两个模拟函数的测试正确地包含在其他测试中。
-
我认为这是 C#?
标签: c# unit-testing