使用MOQ模拟构造函数

我有一个B类,其构造函数参数类型为Class A.

我希望在为B类创建模拟时,类A被模拟。

我怎样才能做到这一点? 我试过MockBehavior Loose / Strict,但这没有帮助!

如果你在new Mock类,你可以在调用new Mock时传入构造函数参数:

所以,如果你有这些课程:

 public class A {} public class B { private readonly A a; public B(A a) { this.a = a; } } 

以下代码使用模拟A创建模拟B:

 var mockA = new Mock(); var mockB = new Mock(mockA.Object);