【问题标题】:How to install Moq framework如何安装起订量框架
【发布时间】:2012-11-27 16:00:25
【问题描述】:

我计划使用 Moq 在我创建的单元测试代码中模拟一些接口。我已经下载了最新版本的 Moq。

我的问题是如何安装它?我应该将 Moq.dll 放在哪里?

我尝试在互联网上搜索,但我只能找到如何使用 Moq 的示例,而不是如何安装它。

【问题讨论】:

标签: c# unit-testing frameworks moq


【解决方案1】:

你不需要安装它。

您当然可以使用 NuGet(如果您使用较新版本的 VS),但您可以将其复制到您的项目文件夹(或者最好是项目文件夹的 lib 子目录之类的东西)并添加对它的引用.

编辑:

您的版本似乎有问题。在您下载的最小起订量 zip 存档中,有多个文件夹。您需要使用文件夹Net35 中的一个,而不是Net40 中的一个。这些数字指的是目标 .NET 框架的版本,而不是 Moq 本身的版本。

【讨论】:

  • 我之前做过,但它说它无法加载文件。 "This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded." 顺便说一句,我在 VS2008 上使用的是 Moq 4.0。
  • @Anthony 您似乎正在尝试从面向 .Net 3.5(或更早版本)的程序集中加载 .Net 4.0 版本的 Moq。然后使用 .Net 3.5 版本的 Moq。
【解决方案2】:

没有必要安装它。只需在项目中添加对 moq.dll 的引用即可。

当然,您可以使用gacutil 在全局程序集缓存中注册库。

c:\path> gacutil /i Moq.dll

【讨论】:

  • 我现在已经将 .dll 添加到我的项目中的一个文件夹中,并在项目中引用了它。我现在的问题是,不知何故,我无法使用它。从某种意义上说,Mock 类没有出现。我是不是忘了做点什么?
  • 你导入命名空间了吗?您通常可以只使用该类,例如 var mock = new Mock<YourClass>();,然后通过按 CTRL + . 让 Visual Studio 自行导入正确的命名空间。
  • 你能告诉我它是怎么做的吗?导入命名空间和所有内容。谢谢:)
  • 只需将using Moq; 添加到源文件的开头即可。
【解决方案3】:

添加对 Moq 框架的引用的最佳方法是从 Nuget 安装它。此外,您仍然可以download Moq.dll 并添加对该库的引用(通常我在解决方案文件夹下创建文件夹libs,我将所有第三方库放在其中,这不是通过 Nuget 提供的)。

顺便说一句从 Nuget 安装包的另一个选项 - 右键单击​​项目引用并选择 Manage Nuget packages...。然后在线搜索 Moq 并安装它。见why use Nuget over installing libraries directly on my machine

【讨论】:

  • NuGet 支持 VS2008 吗?从我所看到的,它似乎没有。
  • @Anthony 好吧,你可以add support of Nuget 但如果可能的话,考虑迁移到 VS2010 或 VS2012
  • 在哪里可以下载最新版本的 DLL,@SergeyBerezovskiy?由于他们搬到了 Github,code.google.com/p/moq/downloads/list 似乎没有更新(我当前的环境阻止我使用 Nuget)。
  • 啊,没关系,在可下载的 repo 上找到了一个副本:github.com/Moq/moq4/releases
【解决方案4】:

这是一个老问题,但我使用的方便方法没有在这里列出,这是谷歌上的第一个结果。我正在使用 VS 2013,如果我在 Extensions and Updates 中搜索 Moq,则没有结果:

  1. 转到包管理器控制台 -(工具 -> 库包管理器)
  2. 将默认项目更改为您的测试项目
  3. 然后输入:install-package moq

【讨论】:

    【解决方案5】:

    使用 Visual Studio 时:

    1. 右键单击References [在项目资源管理器中]
    2. 管理 NuGet 包
    3. 搜索 Moq 并将其添加到您的解决方案中。

    【讨论】:

      【解决方案6】:

      如果您使用的是较新版本的 Visual Studio (2013+),则可以使用包管理器控制台。

      工具 > Nuget 包资源管理器 > 包管理器控制台

      执行:

      安装包最小起订量-版本 4.5.16

      另见: https://www.nuget.org/packages/Moq/

      【讨论】:

        【解决方案7】:

        使用 Visual Studio 时

        1. 在解决方案资源管理器中右键单击测试项目
        2. 管理 NuGet 包...
        3. 将包源更改为全部
        4. 浏览起订量
        5. 安装

        【讨论】:

          【解决方案8】:

          对于 .NET Core,使用 dotnet CLI - dotnet add package Moq

          【讨论】:

            猜你喜欢
            • 2015-12-23
            • 1970-01-01
            • 2022-01-21
            • 2014-11-18
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-04-08
            • 1970-01-01
            相关资源
            最近更新 更多