我想用一个例子来解释我的问题。如何嘲笑在另一种方法内调用的方法?
Class A
{
Fun1()
{
// some code
B obj2 = new B();
obj2.Fun2();
}
}
Class B
{
Fun2()
{
// some code
}
}
// Test Class for Class A
Class A_Test
{
Fun1_Test()
{
A obj1 = new A();
A.Fun1();
}
}
在这里,我呼吁Fun1
这就要求fun2()
。我想模拟调用fun2()。
我需要在Fun1()中只对类B对象进行初始化,我不想用构造函数做它。
有可能模拟调用fun2()?
不要使用直接依赖使用依赖注入。如果你先阅读SOLID原则会更好。 – loop
对于模拟类B,您必须将它的模拟实现传递给类A.通过您的方式,您无法完成它。这是使用接口而不是特定实现的一个原因。 –