我正在我的项目中编写一些单元测试,并且我对包含我想要测试的方法的控制器有一个数据上下文依赖项。
我正在使用 Ninject 注入依赖项和 Moq 来创建我的模拟数据上下文。我的 DI 使用IDataContext
我的 dbml 隐含的接口,并在整个注入过程中使用。
在我的单元测试中,我正在创建我的模拟数据上下文,如下所示:
var mock = new Mock<IDataContext>();
var myController = new MyController(mock.Object);
Object reference not set to an instance of an object.
这会在执行 datacontexts 构造函数时在第二行引发异常。
我显然错过了设置它的基本部分,但是我见过的大多数 Moq 示例都涉及使用Setup()
.
我会以正确的方式解决这个问题吗?我应该创建我的IDataContext
界面的模拟还是其他东西?