Mock 不包含 Setup 的定义

Mock does not contain a definition for Setup

我是 Moq 的新手,在使用它时遇到了问题。

到目前为止我的代码如下:

 private Mock _serviceMock;

 [SetUp]
 public void Setup()
 {
     _serviceMock = new Mock<IMyInterface>();
 }

我的界面中有两个方法,但是当我去使用时 _serviceMock.Setup 我得到了错误

"Mock does not contain a definition for Setup".

我想我在这里遗漏了一个参考或一些明显的东西,但是这一次 Google 让我失望了!

我在我的项目中引用了 Moq 和 Nunit.Framework,并且我正在使用 Moq 版本 4.10.0 和 NUnit 3.11.0,它们都是通过 Nuget 安装的。

基础 Mock 对泛型类型一无所知。

改用Mock<IMyInterface>

private Mock<IMyInterface> _serviceMock;

[SetUp]
public void Setup() {
    _serviceMock = new Mock<IMyInterface>();
}

参考 Moq Quickstart 以更好地了解如何使用该框架